一个dockerfile文件包含以下部分: 基础镜像信息:使用FROM关键字指定基础镜像信息,FROM是dockerfile文件的第一条指令。 维护者信息:使用MAINTAINER关键字指定,通常可以使用dockerfile文件
一个dockerfile文件包含以下部分:
基础镜像信息:使用FROM关键字指定基础镜像信息,FROM是dockerfile文件的第一条指令。
维护者信息:使用MAINTAINER关键字指定,通常可以使用dockerfile文件创建者的名字或者邮件作为维护者的信息。
镜像操作指令:没执行一条镜像操作指令,都会在镜像中添加新的一层。
容器启动执行命令:用户指定在启动容器时需要执行的命令,通过:CMD ENTRYPOINT指定。
常见的景象操作指令:
指令
描述
FROM
基础镜像,一切从这里开始构建
MAINTAINER
镜像是谁写的,姓名+邮件
RUN
镜像构建的时候需要运行的命令
ADD
添加内容:比如加一个tomcat压缩包
WORKDIR
镜像的工作目录
VOLUME
镜像挂载的目录
EXPOSE
保留暴露的端口
CMD
指定这个容器启动的时候要运行的命令,只有最后一个会生效,可以被代替
ENTRYPOINT
指定这个容器启动的时候需要运行的命令,可以追加命令
ONBUILD
当构建一个被继承Dockerfile的时候就会运行ONBUILD的指令,触发指令
COPY
类似ADD,将我们的文件拷贝到镜像中
ENY
构建的时候设置环境变量
DockerFile的执行
在完成dockerfile文件的编写后,执行docker build命令,则会根据dockerfile文件中上下文的内容构建新的docker镜像。整个构建过程会被递归处理,如果在dockerfile中包含路径或者URL,都会被递归构建。