Skip to content

Helm 常用命令以及使用示例


1. 仓库管理

命令说明示例
helm repo add添加 Chart 仓库helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update更新本地仓库索引helm repo update
helm repo list查看已配置的仓库列表helm repo list
helm repo remove移除仓库helm repo remove bitnami

2. 安装/升级应用

命令说明示例
helm install部署应用helm install my-nginx bitnami/nginx
helm upgrade升级应用配置helm upgrade my-nginx bitnami/nginx --set replicaCount=2
helm install -f使用自定义 values 文件安装helm install -f custom-values.yaml my-app ./my-chart

3. 查看信息

命令说明示例
helm list查看已部署的 Releasehelm listhelm ls
helm status查看 Release 状态helm status my-nginx
helm get values查看 Release 的配置值helm get values my-nginx
helm history查看 Release 历史版本helm history my-nginx

4. 卸载/回滚

命令说明示例
helm uninstall卸载应用helm uninstall my-nginx
helm rollback回滚到历史版本helm rollback my-nginx 1

5. 搜索 Chart

命令说明示例
helm search hub从 Artifact Hub 搜索 Charthelm search hub nginx
helm search repo从本地仓库搜索 Charthelm search repo bitnami/nginx

6. 本地 Chart 操作

命令说明示例
helm create创建新 Chart 模板helm create my-chart
helm package打包 Chart 为 .tgz 文件helm package ./my-chart
helm lint检查 Chart 语法helm lint ./my-chart

7. 其他常用命令

命令说明示例
helm dependency update更新 Chart 依赖helm dependency update ./my-chart
helm show查看 Chart 详细信息helm show chart bitnami/nginx
helm env查看 Helm 环境变量helm env

示例场景

  1. 安装 MySQL 并指定密码
bash
helm install my-db bitnami/mysql --set auth.rootPassword=123456
  1. 升级时使用自定义 values 文件
bash
helm upgrade my-app -f overrides.yaml ./my-chart
  1. 回滚到指定版本
bash
helm rollback my-app 2  # 回滚到历史版本 2

通过这些命令,您可以高效管理 Kubernetes 应用的生命周期。建议结合 --help 查看详细参数,例如 helm install --help

以下是续写的 Helm 示例场景,补充更多实用操作案例:


续写示例场景

  1. 测试模板渲染(不实际安装)
bash
helm install my-redis bitnami/redis --dry-run --debug
# 用于验证 Chart 模板渲染结果,常用于调试
  1. 查看生成的 Kubernetes 清单
bash
helm get manifest my-nginx  # 显示该 Release 实际生成的 YAML 配置
  1. 从本地目录安装开发中的 Chart
bash
helm install dev-app ./my-chart/  # 直接使用本地 Chart 目录部署
  1. 添加第三方仓库并安装应用
bash
helm repo add jetstack https://charts.jetstack.io
helm install cert-manager jetstack/cert-manager --namespace cert-manager
  1. 查看 Chart 的默认 values 配置
bash
helm show values bitnami/nginx > default-values.yaml  # 导出默认配置供修改
  1. 创建新 Chart 并添加依赖
bash
helm create my-microservice
# 编辑 Chart.yaml 添加依赖后执行:
helm dependency update my-microservice
  1. 强制替换已存在的 Release
bash
helm install my-app --replace ./my-chart  # 当同名 Release 已存在时强制覆盖

高级调试场景

  1. 模拟升级并对比变化
bash
helm upgrade my-app ./my-chart --dry-run --debug  # 预演升级过程
  1. 查看 Release 历史版本差异
bash
helm diff revision my-app 1 2  # 比较版本1和版本2的配置差异(需安装 diff 插件)
  1. 快速清理测试环境
bash
helm uninstall my-test --keep-history  # 保留历史记录
helm uninstall my-test --no-keep-history  # 完全删除

这些场景覆盖了 Helm 的模板调试、配置管理、本地开发和安全操作等进阶用法。实际使用时可根据需求组合参数,例如:

bash
helm upgrade --install -f prod-values.yaml --atomic --timeout 300s my-app ./chart
# --install:不存在则安装
# --atomic:失败自动回滚
# --timeout:设置超时时间

Released under the MIT License.