此问题已在此处有答案:
How to make my kubernetes to take my latest docker image? [duplicate](1个答案)
11个月前关闭。
我已经配置了Kubernetes连接到我自己的容器注册表,开发人员不断地推送更改,更新“:latest”容器。
我的部署定义针对的是:latest标签,并且一切都如我所期望的那样工作,但问题出现了,在将更改推送到容器注册表之后,Kubernetes应该花多长时间响应该更改并创建一个新容器?
此问题已在此处有答案:
How to make my kubernetes to take my latest docker image? [duplicate](1个答案)
11个月前关闭。
我已经配置了Kubernetes连接到我自己的容器注册表,开发人员不断地推送更改,更新“:latest”容器。
我的部署定义针对的是:latest标签,并且一切都如我所期望的那样工作,但问题出现了,在将更改推送到容器注册表之后,Kubernetes应该花多长时间响应该更改并创建一个新容器?
1条答案
按热度按时间ecfsfe2w1#
它取决于部署清单中定义的映像拉取策略。如果容器的imagePullPolicy设置为Always,则在以下场景中更新新映像
1.如果pod被删除。一个新的pod被创建
1.如果Pod被扩展
1.如果对映像进行滚动升级
注意:如果容器的imagePullPolicy设置为IfNotPresent,并且如果您对镜像进行滚动升级,那么具有现有镜像的节点可能会继续运行现有镜像,如果在这些节点上安排了新的pod,则不具有现有镜像的节点将拉取最新镜像。在这种情况下,不同的映像将在您的环境中运行,并导致不一致的行为。最佳实践是使用正确的映像标记并在部署清单中使用它。避免最新的图像标签。