使用 docker-compose 运行 拉取图像

Pull image with docker-compose run

这是一个典型的 docker-compose 文件。我用它来构建图像(docker-compose build)和 运行 我的测试(docker-compose 运行 测试 )。

    version: '2'
    services:

      test : 
        links: 
         - web

        cmd : "mvn clean verify"

      web: 
        image: my_repo/my_image:tag
        build: .

当我使用 运行 命令时 docker-compose 尝试在 运行 测试之前构建图像。

是否有强制它拉取现有图像而不是尝试构建新图像的方法?

您可以在 运行 之前使用 "pull" 命令。从注册表中提取所有新图像

docker-compose pull
docker-compose run

在创建test容器之前构建web镜像是正常的,因为([=]之间有link 16=]web 取决于 test)。如果您不想每次 运行 docker-compose up 时都进行构建,请先创建您的 web图片:

docker build -t web .

然后使用新映像更新您的 Dockerfile:

version: '2'
    services:

      test : 
        links: 
         - web

        cmd : "mvn clean verify"

      web: 
        image: web

您的两种解决方案都可以正常工作。

我只是希望有像

这样的东西

'docker 运行 test --pull' 或 'docker dun test --build' 强制 pull/build。

谢谢!