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