Google cloud platform Google容器引擎-更新复制控制器多容器吊舱

Google cloud platform Google容器引擎-更新复制控制器多容器吊舱,google-cloud-platform,kubernetes,google-kubernetes-engine,Google Cloud Platform,Kubernetes,Google Kubernetes Engine,正在尝试使用更新多容器吊舱 kubectl rolling-update my_rc --image=eu.gcr.io/project_id/myimage 我得到: error: Image update is not supported for multi-container pods 如何更新单个容器,或者我必须删除并重新创建pod 目前,您最好的选择是更新定义复制控制器的yaml文件,以使用新映像并运行: kubectl rolling-update my_rc -f my_fil

正在尝试使用更新多容器吊舱

kubectl rolling-update my_rc --image=eu.gcr.io/project_id/myimage
我得到:

error: Image update is not supported for multi-container pods

如何更新单个容器,或者我必须删除并重新创建pod

目前,您最好的选择是更新定义复制控制器的yaml文件,以使用新映像并运行:

kubectl rolling-update my_rc -f my_file.yaml
如果没有定义复制控制器的yaml文件,则可以通过运行以下命令来获取:

kubectl get rc my_rc --output=yaml > my_file.yaml
然后,您应该能够更新该文件中指定的图像并运行滚动更新


在Kubernetes的下一个版本(目标为3月份)中,您只需传递
--container
标志,就可以告诉kubectl pod中的哪些容器应该使用新图像:

kubectl rolling-update my_rc --container=my_container --image=eu.gcr.io/project_id/myimage

此功能是在1.1版被剪切后使用的。

使用kubectl滚动更新my_rc-f my_file.yaml,并使用相同的yaml文件(用于创建)时,会给我“错误:monar-redis-worker-master-controller-integration.yaml不能与现有的副本控制器monar同名”对我来说,这不是一个更新,而是一个使用现有的创建,对吗?啊,很抱歉没有包含更多的细节。您还需要为新RC指定一个新名称,以便在卷展期间将其与旧RC区分开来(因为它们都存在于吊舱从一个移动到另一个的同时)。