Dockerfile
中以#
开头的行全为注释行code
FROM <image>:<tag>
table
指定基础镜像
MAINTAINER <name>
容器
指定维护者信息
RUN <command>
或 RUN ["executable file", "parameter1", ...]
基础
在当前镜像中执行指定命令,执行的结果会被镜像保存
CMD
用法相似于RUN
,用于指定Docker容器启动时执行的命令。Dockerfile中只能有一个CMD,而且此CMD命令会被启动Docker容器时指定的参数覆盖变量
LABEL <key>=<value> <key>=<value>
配置
为Docker镜像指定meta信息,同时会覆盖基础镜像中的meta信息
EXPOSE <port> <port> ....
file
指定暴露的端口号
ENV <key>=<value>
或者 ENV <key> <value>
meta
指定镜像的*环境变量*,会被镜像保存下来
ADD <src> <des>
command
拷贝主机的文件或者目录到镜像中。此命令会**自动解压tar文件**
COPY <src> <des>
和ADD
命令相似,但此命令不会自动解压tar文件im
ENTRYPOINT <command>
或 ENTRYPOINT ["executable file", "parameter1", ...]
配置容器启动后启动的命令,相似`CMD`,但此命令**不会被启动Docker容器时指定的参数覆盖**
VOLUME ["/data/"]
指定一个能够从主机或者其余容器挂载的**挂载点**
USER username
指定后续操做所用的**用户名**
WORKDIR <dir path>
为后续操做指定工做目录
ONBUILD <command>
指定当此镜像做为基础镜像时指定的命令,会在`FROM`以后执行