我们在开发者机器上使用Docker Swarm进行开发。 Docker服务正在使用例如foo:beta
图片。
当开发人员为foo
构建新功能时,他会在本地以相同名称(sha不同)构建容器的新图像。
但是,我们无法更新服务以使用新的映像版本。我们试过了
docker service update --force --image <component>
没有成功。
我们正在运行最新的边缘码头版本:17.05.0-ce-rc1-mac8(16582)
答案 0 :(得分:0)
关键是对远程存储库中不存在的图像使用本地标记。当Swarm无法通过远程仓库上的给定标签找到图像时,它将使用本地标记。
为此目的,我们还标记所有与开发人员相关的容器。 dev
标记,仅存在于开发人员计算机上。这样我们就可以更新图像并强制进行服务更新,更新正在运行的代码。