除非显式调用构建,否则从远程图像中拉取

Pull from remote image unless build is explicitly called

有没有办法在 docker-compose yaml 文件中同时指定 build:image: 并让它们正常播放?

理想情况下,远程图像是在 docker-compose up 上拉取的,而在 docker-compose up --builddocker-compose build 为 运行 时构建。当开发人员必须注释掉构建参数以拉取远程图像时,这个问题有点麻烦。

示例 1

build: ./nginx
image: us.gcr.io/cool-project-123456/dev-box:latest

构建总是运行,然后使用image:值命名和标记容器。

示例 2

# build: ./nginx
image: us.gcr.io/cool-project-123456/dev-box:latest

这里好像只要注释了build:,而image:存在,所有的构建命令都忽略了,取而代之的是拉取镜像。

示例 1 并不总是 运行。它 运行 仅当您没有该图像时:us.gcr.io/cool-project-123456/dev-box:latest

docker-compose up 始终首先使用您计算机中的现有图像。

我的建议是保留

build: ./nginx
image: us.gcr.io/cool-project-123456/dev-box:latest

并使用

  • docker-compose up --build
  • docker-compose pull & docker-compose up