dockerfile

什么是dockerfile?

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

 

准备知识:

  1. Dockerfile整体就两类语句组成:
    • # Comment 注释信息
    • Instruction arguments 指令 参数,一行一个指令。
  2. =Dockerfile文件名首字母必须大写。

  3. Dockerfile指令不区分大小写,但是为方便和参数做区分,通常指令使用大写字母。

  4. Dockerfile中指令按顺序从上至下依次执行。

  5. Dockerfile中第一个非注释行必须是FROM指令,用来指定制作当前镜像依据的是哪个基础镜像。

  6. Dockerfile中需要调用的文件必须跟Dockerfile文件在同一目录下,或者在其子目录下,父目录或者其它路径无效。

 

dockerfile 镜像构建的流程

借鉴: Docker Dockerfile | 菜鸟教程 (runoob.com)

 

 

Dockerfile指令说明简洁版:

  • FROM                                                 构建镜像基于哪个镜像
  • MAINTAINER                                      镜像维护者姓名或邮箱地址
  • RUN                                                    构建镜像时运行的指令
  • CMD                                                    运行容器时执行的shell环境
  • VOLUME                                             指定容器挂载点到宿主机自动生成的目录或其他容器
  • USER                                                  为RUN、CMD、和 ENTRYPOINT 执行命令指定运行用户
  • WORKDIR                                           为 RUN、CMD、ENTRYPOINT、COPY 和 ADD 设置工作目录,就是切换目录
  • HEALTHCHECH                                 健康检查
  • ARG                                                    构建时指定的一些参数
  • EXPOSE                                             声明容器的服务端口(仅仅是声明)
  • ENV                                                    设置容器环境变量
  • ADD                                                    拷贝文件或目录到容器中,如果是URL或压缩包便会自动下载或自动解压
  • COPY                                                 拷贝文件或目录到容器中,跟ADD类似,但不具备自动下载或解压的功能
  • ENTRYPOINT                                    运行容器时执行的shell命令

 

PS: Dockerfile 文档中, Json数据使用双引号 

 

dockerfile 编写规范

借鉴: https://www.cnblogs.com/549294286/p/11044901.html

 

posted @ 2022-06-26 22:45  萤huo虫  阅读(95)  评论(0编辑  收藏  举报