我使用谷歌云存储我的码头工人图像和东道国我kubernetes集群。 我不知道我怎么能有kubernetes拉下它拥有最新的标记每一个新推的时间容器中。
我以为imagePullPolicy是要走的路,但它似乎并没有做的工作(我可能失去了一些东西)。 这里是我的容器规格:
"name": "blah",
"image": "gcr.io/project-id/container-name:latest",
"imagePullPolicy": "Always",
"env": [...]
目前,我不得不删除并重新创建部署时,我上传了新的泊坞窗图像。
Kubernetes它自己将永远不会对集装箱图像更新触发存储库。 你需要在加工某种CI / CD管道。 此外,我也强烈建议避免使用:latest
,因为它使得一段时间内的容器改变。 这是我在使用某种版本的看法要好得多。 是它语义像image:1.4.3
提交基于image:<gitsha>
或作为我使用image:<gitsha>-<pushid>
其中推是每个推到一个回购依次更新值(使得标签即使我重新上传改变从同一版本)。
有了这样的版本,如果你在你的清单中改变形象,部署将得到一个滚动更新预期。
如果你想坚持到image:latest
,你可以用版本的标签添加到您的吊舱的模板,所以如果你碰到它,它会滚。 你也可以杀死荚手动一个一个,或者(如果你能负担得起的停机时间),你可以扩展部署到0副本和背到N
文章来源: How can we setup kubernetes to automatically change containers when a new one is pushed?