我正在使用谷歌云来存储我的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(使用前将#替换为@)