理解:可以理解为镜像文件的源码
基本规则:
每条保留字指令都必须为大写字母并且后面要跟随至少一个参数
指令按照从上到下的顺序执行
#表示注释
每条指令都会创建一个新的镜像层,并对镜像进行提交
Base镜像 scratch
保留字指令:
FROM : ----基础镜像,当前镜像是基于那个镜像的
MAINTAINER:-----容器构建者的姓名和邮箱地址
RUN:------容器构建是需要运行的命令
EXPOSE:---------当前容器对外暴露的端口号
WORKDIR:------指定创建容器后,终端默认登录进来的工作目录
ENV:----用来在构建镜像过程中设置变量
ADD:------将宿主机下的文件拷贝到镜像并且add命令会自动处理url和解压tar压缩包
COPY:---将构建上下文目录中的文件或者目录复制到新的一层的镜像内
VOLUME:容器数据卷,用于数据保持和持久化工作
CMD:----指定一个容器启动时要运行的命令,一个dockerFile中可以有多个CMD命令,但是只有最后一个会生效
ENTRYPOINT:-------指定一个容器启动时要运行的命令,多个指令时会追加,不会覆盖
具体案例可看hUb.docker.com查看
ONBUILD:----当构建一个被继承的dockerFile时运行命令,父镜像在被子镜像继承后父镜像的onbuild被触发。