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