写在Dockerfile中的命令
FROM 镜像名:版本
RUN 命令
中间使用**&&隔开,可以使用多个命令,一个RUN命令会创建一层,同一层的命令不要使用多个RUN**
COPY 源路径 目标路径
从上下文中的原路径中复制文件到镜像的目标路径中,源路径可以使用通配符*和?(*代表任意多个任意字符,?代表一个任意字符)。目标路径可以是镜像内的绝对路径,也可以是相对于工作路径的相对路径。工作路径使用WORKDIR指定。COPY命令会保留文件的元数据比如权限和修改时间等。
ADD 源路径 目标路径
用法和COPY命令一样,但是ADD命令可以从url下载文件,并赋予文件600权限,还可以自动解压缩gzip,bzip2和xz格式的文件。只在需要自动压缩的场景使用ADD
CMD命令
在容器启动时执行的命令,这个命令类似于设置一个默认值,如果在运行镜像的时候只输入了docker run 镜像名
,那么将会运行CMD中设置的命令,如果加入其它参数在镜像名之后,那么参数名之后的参数将会作为命令在容器中执行。
ENTRYPOINT '命令' 参数
和CMD一样也是设置启动时执行的命令,但是启动时如果在镜像名之后加入了其它的参数,将作为ENTRYPOINT命令的参数去执行,可以使用ENTRYPOINT命令指定一个脚本,然后输入命令作为脚本的参数。
ENV <KEY> <val>
ENV <KEY1>=<val1> <KEY2>=<val2>
创建环境变量