SuperAPI AI 工具集

helm-deploy

部署与运维

查看项目

更新于 10-16 03:36

技能介绍

用途:通过 Helm 进行安全部署,重点防止部署陈旧镜像。

主要能力与流程:

  • 部署前校验镜像是否存在:ACR 使用 az acr repository show-tags --name <registry> --repository <image> --orderby time_desc --top 5;Docker Hub 使用 docker manifest inspect <registry>/<image>:<tag>。
  • 查看当前运行状态:helm list -n <namespace>;并用 kubectl get pods -n <namespace> -o jsonpath='{range .items[]}{.metadata.name}{"\t"}{range .spec.containers[]}{.image}{"\n"}{end}{end}' 检查运行中的镜像。
  • 应用前对比变更:helm diff upgrade <release> <chart> -n <namespace> --set image.tag=<new-tag> --set image.pullPolicy=Always -f values.yaml。
  • 部署模板:helm upgrade --install <release> <chart> --namespace <namespace> --set image.repository=<registry>/<image> --set image.tag=<specific-tag> --set image.pullPolicy=Always --atomic --wait --timeout 5m -f values.yaml。
  • 部署后验证:kubectl rollout status deployment/<deployment> -n <namespace>;再用 jsonpath 确认镜像;kubectl logs -l app=<app> -n <namespace> --tail=50 检查启动错误。
  • 回滚:helm rollback <release> -n <namespace>;查看历史 helm history <release> -n <namespace>,可回滚到指定版本。

关键规则:始终使用唯一 tag(如 git SHA、semver),始终设置 image.pullPolicy=Always,始终使用 --atomic 失败自动回滚,始终使用 --wait 确认 Pod 健康;禁止仅用 :latest;部署前必须验证镜像存在。

限制:资料未提供具体支持的集群环境、Helm 版本要求、权限配置及安装方式,暂未提供。