首页 新闻 会员 周边 捐助

k8s 如何只更新容器的 image tag

0
悬赏园豆:30 [已解决问题] 解决于 2020-02-10 15:52

发布了新的容器镜像 blog-web:2.1.53 ,用什么命令可以在 k8s 集群中只更新 image tag ,目前在运行的 image tag 是 blog-web:2.1.52

k8s
dudu的主页 dudu | 高人七级 | 园豆:30925
提问于:2020-02-09 19:20
< >
分享
最佳答案
0

通过 kubectl set image 可以实现。

kubectl set image deployment/blog-web blog-web=blog-web:2.1.53
dudu | 高人七级 |园豆:30925 | 2020-02-10 15:51
其他回答(1)
0

直接apply deployment即可。

不太理解你说的只更新tag是什么需求(不想销毁pod?)?yaml其他的字段你不改动就是了。

收获园豆:30
Timetombs | 园豆:3959 (老鸟四级) | 2020-02-09 19:51

想使用同一个命令更新所有的 deployment ,命令参数是 deployment name 与 image tag

支持(0) 反对(0) dudu | 园豆:30925 (高人七级) | 2020-02-09 20:21

@dudu:

我这边的使用方式是把k8s的yml放在git repo中管理。先commit变更tag, 然后:kubectl apply -f a-deployment.yml -f b-deployment.yml

不知是否符合你的要求?

支持(0) 反对(0) Timetombs | 园豆:3959 (老鸟四级) | 2020-02-09 20:42

@blackheart: 这样每次发布都要修改 deployment.yml 文件,不方便,我们想通过 gitlab-ci 自动发布

支持(0) 反对(0) dudu | 园豆:30925 (高人七级) | 2020-02-09 21:07

@dudu:

我们在ci里面自动pull下来yml的repo,然后用sed替换指定的deployment.yml中的image tag),再自动push上去。

支持(0) 反对(0) Timetombs | 园豆:3959 (老鸟四级) | 2020-02-09 21:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册