概述

Dockerfile就是用来构建镜像的构建文件,就是命令脚本,通过这个脚本,可以生成一个镜像。
每个命令就是镜像的一层(对应分层下载)。

指令基础知识

  • 1、每个关键字都是大写
  • 2、从上到下顺序执行
  • 3、#表示注释
  • 4、每一个指令都会创建提交一个新的镜像层
  1. FROM # 基础镜像
  2. MAINTAINER # 作者信息(name<mail>)
  3. RUN # 运行命令(想让它干啥)
  4. CMD # 指定容器启动时要执行的命令(可以被追加的命令替代)
  5. LABEL # 指定生成镜像的元数据标签
  6. EXPOSE # 镜像内服务监听的端口
  7. ENV # 指定环境变量
  8. ADD # COPY文件,自动解压
  9. COPY # 复制文件
  10. ENTRYPOINT # 指定容器启动时要执行的命令(不能被追加的命令替换执行)
  11. VOLUME # 创建数据卷挂载点
  12. USER # 指定运行容器时的用户名或UID
  13. WORKDIR # 配置工作目录(进入容器时所在的目录)
  14. ARG # 指定镜像内使用的参数(版本号信息等)
  15. ONBUILD # 当多创建的镜像作为其他镜像的基础镜像时,所执行的创建操作指令
  16. STOPSIGNAL # 容器退出的信号值
  17. HEALTHCHECK # 健康检查
  18. SHELL # 配置shell类型

dockerfile - 图1
image.png

构建步骤

  • 1、编写dockerfile文件
  • 2、docker build 构建成一个镜像
  • 3、docker run 运行镜像
  • 4、docker push 发布镜像(DockerHub,阿里云镜像仓库,也可以私有化,类似GitHub)

image.png
dockerfile - 图4

image.png