本地开发和群集服务映像更新

我们在开发人员机器上使用Docker Swarm进行开发。 Docker服务使用例如foo:beta映像。

当一个开发者为foobuild立一个新的特性时,他在同一个名字下(sha是不同的)在本地build立一个新的容器映像。

但是,我们无法更新服务以使用新的映像版本。 我们尝试了

 docker service update --force --image <component> 

没有成功。

我们正在运行最新的docker构build版本:17.05.0-ce-rc1-mac8(16582)

关键是为图像使用本地标签,这在远程存储库上不存在。 当Swarm无法通过远程回购中的给定标签find图像时,它将使用本地的。

为此,我们使用例如dev标签来标记所有与开发人员相关的容器,这些容器只存在于开发人员机器上。 这样我们可以更新图像,并通过强制服务更新,更新运行代码。