• docker-compose 是用于定义和运行多容器的 docker 应用程序的工具。compose 可以使用 yaml 文件来配置应用程序的服务。
  • compose 的使用一般分为三步:
  1. 使用 dockerfile 定义应用程序的环境,以便可以再任何地方复制它。
  2. 再docker-compose.yml 中定义组成应用程序的服务,以便它们可以再隔离的环境中一起运行。
  3. 运行 docker-compose up,然后 compose 启动并运行整个应用程序。
  • dockerfile 是有一系列指令和参数构成的脚本,一个dockerfile 里面包含了构建整个镜像的完整命令。通过 dicker build 执行 docker 中的一系列指令自动构建镜像。

dockerfile 常用指令

  • from:基础镜像,from 命令必须是 dockerfile的首个命令
  • label:为镜像生成元素数据标签信息
  • user:指定运行容器时的用户名或 uid,后续 run 也会使用指定用户
  • run: run 命令时dockerfile 执行命令的核心部分,它接受命令作为参数并用于创建镜像,每条 run 命令在当前基础镜像上执行,并且会提交一个新镜像层
  • workdir:设置 cmd 指明的命令运行目录,为后续的 run、cmd、entrypoint、add 指令配置工作目录
  • env:容器启动的环境变量
  • arg:构建环境的环境变量
  • copy:复制文件
  • cmd:容器运行时执行的默认命令
  • entrypoint:指定容器的“入口”
  • healthcheck:容器健康状态检查

docker build

  • 忽略文件:.dockerignore
  • 指定文件:docker build -f
  • 添加标签:docker build -t
  • 不使用缓存:docker build --no-cache
  • 构建时变量:docker build --build-arg