我们如何设置 kubernetes 在推送新容器时自动更改容器?

2024-01-31

我正在使用谷歌云来存储我的Docker图像和托管我的库伯内特斯簇。我想知道我怎样才能拥有库伯内特斯下拉图像latest每次推送新的标签时。

我想图像拉取策略是要走的路,但它似乎没有完成这项工作(我可能错过了一些东西)。这是我的容器规格:

"name": "blah",
"image": "gcr.io/project-id/container-name:latest",
"imagePullPolicy": "Always",
"env": [...]

目前,当我上传新的 Docker 映像时,我必须删除并重新创建部署。


Kubernetes 本身永远不会触发存储库中的容器镜像更新。您的工具中需要某种 CI/CD 管道。此外,我强烈建议避免使用:latest因为它会让你的容器随着时间的推移而改变。我认为使用某种版本控制要好得多。无论是语义上的image:1.4.3基于提交image:<gitsha>或者当我使用image:<gitsha>-<pushid>其中 Push 是每次推送到存储库时按顺序更新的值(这样,即使我从同一版本重新上传,标签也会发生变化)。

通过这样的版本控制,如果您更改清单中的图像,部署将按预期获得滚动更新。

如果你想坚持image:latest,您可以在 pod 模板中添加带有版本的标签,这样如果您碰撞它,它就会滚动。您还可以手动一个接一个地终止 pod,或者(如果您能承受停机时间)您可以将部署规模扩大到 0 个副本,然后恢复到 N 个副本

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我们如何设置 kubernetes 在推送新容器时自动更改容器? 的相关文章

随机推荐