helm更新latest镜像

简介: 有不少朋友跟我说,helm更新statefullset或者deployment时,使用latest镜像,无法更新,其实这个问题很好解决的,可以使用git-hash来解决,也可以使用我们本篇文章里的办法,添加环境变量来解决

有不少朋友跟我说,helm更新statefullset或者deployment时,使用latest镜像,无法更新,其实这个问题很好解决的,可以使用git-hash来解决,参考文章https://www.yinyubo.cn/?p=535

也可以使用我们本篇文章里的办法,添加环境变量来解决

helm更新的原理是,yaml文件没有变更,则不会更新,我们要想使用latest镜像先terminating老的pod,再running一个新的pod,只要使我们的statefullset或者deployment的yaml文件发生变更即可。下面贴出解决代码

containers:
        - image: '镜像名:latest'
          imagePullPolicy: Always
          env:
            - name: upgrade_time
              value: {{ date "2006-01-02-150405" .Release.Time }}

镜像使用latest,拉取策略使用alway pull的策略。在环境变量里添加一个upgrade_time升级时间,该时间使用helm的date功能生成,这样我们的yaml就能做到每次helm upgrade都发生变更,每次都能去拉取最新的镜像并且升级。并且我们可以在部署之后,通过kubectl exec -it “pod名字” sh 进入容器,检查env里的upgrade_time看看是否更新。

很简单吧,快试试吧

目录
相关文章
|
Kubernetes 应用服务中间件 Linux
helm安装和使用-通过helm部署k8s应用
helm安装和使用-通过helm部署k8s应用
|
存储 Linux Docker
Docker 更新版本
Docker 更新版本原来版本 1.10 更新后的版本 19.03.1 更新 Docker 版本需要注意的问题: 注意系统是否支持新版本的储存驱动。 19.03.01 版本默认使用的储存驱动是 overlay2。
2990 0
|
JSON Shell Linux
docker-registry 私有仓库镜像 之 查看与删除
docker-registry 私有仓库镜像 之 查看与删除
2520 0
|
应用服务中间件 nginx 容器
Kubernetes-连接Harbor仓库拉取镜像
准备工作 Harbor 镜像仓库服务器,我的服务器IP是192.168.242.132; Kubernetes集群节点能通过【docker login】命令登录Harbor仓库,详细设置步骤参考这篇博文 开始配置 创建secret k...
3925 0
|
6月前
|
Docker 容器
docker从指定repo拉取镜像
docker从指定repo拉取镜像
212 1
|
11月前
|
Kubernetes 安全 容器
007_安装helm
007_安装helm
107 0
|
11月前
|
Kubernetes Cloud Native Docker
如何将自己的镜像使用 helm 部署
如何将自己的镜像使用 helm 部署
261 0
如何将自己的镜像使用 helm 部署
|
6月前
|
Kubernetes 安全 测试技术
Docker|kubernetes|本地镜像批量推送到Harbor私有仓库的脚本
Docker|kubernetes|本地镜像批量推送到Harbor私有仓库的脚本
438 0
|
Docker 容器
docker pull 从仓库拉取镜像
docker pull 从仓库拉取镜像
343 0