helm-opslisted
Install: claude install-skill structure-projects/structure-agent-rules
# Helm 使用
> 安全使用 helm 管理 K8s 应用。**生产写操作 MUST 用户确认**。
## 仓库管理
```bash
# 添加仓库
helm repo add <name> <url>
# 更新仓库
helm repo update
# 搜索 Chart
helm search repo <keyword>
# 查看 Chart 信息
helm show chart <repo>/<chart>
helm show values <repo>/<chart>
```
## 安装与升级
```bash
# 安装(指定 namespace + release 名 + 自定义 values)
helm install <release> <repo>/<chart> \
-n <namespace> \
-f values-prod.yaml \
--set image.tag=1.2.0
# 升级
helm upgrade <release> <repo>/<chart> \
-n <namespace> \
-f values-prod.yaml \
--set image.tag=1.2.1
# 安装或升级(推荐)
helm upgrade --install <release> <repo>/<chart> \
-n <namespace> \
-f values-prod.yaml
# 干跑(预览)
helm install <release> <repo>/<chart> --dry-run --debug
```
## 查看
```bash
# 查看 release 列表
helm list
helm list -n <namespace>
# 查看 release 详情
helm status <release>
helm get values <release>
helm get manifest <release>
# 查看历史
helm history <release>
```
## 回滚
```bash
# 回滚到上一版(MUST 用户确认)
helm rollback <release>
# 回滚到指定版本
helm rollback <release> <revision>
```
## 卸载
```bash
# 卸载 release(MUST 用户确认)
helm uninstall <release> -n <namespace>
```
## Chart 编写
### 生态 Chart 结构(双 workload 模板)
```
structure-<X>-center/
├── Chart.yaml
├── values.yaml
├── .helmignore
├── templates/
│ ├── _helpers.tpl
│ ├── deployment.yaml # 双 workload(backend + frontend)
│ ├── service.yaml
│ ├── ingress.yaml
│ ├── hpa.yaml
│ ├── serviceaccount.yaml
│ ├── NOTES.txt
│ └── tests/
│ └── test-connection.yaml
```
### values.yaml 关键约定
```ya