Guide for managing Kubernetes applications using Helm package manager. Covers chart installation, configuration, upgrades, and repository management.
Expert guidance for using Helm, the package manager for Kubernetes. This skill helps you search, install, configure, upgrade, and manage Helm charts to deploy applications on Kubernetes clusters.
Provides step-by-step instructions for common Helm operations including finding charts, installing releases with custom configurations, upgrading deployments, rolling back failed releases, and managing chart repositories.
Before working with Helm, understand these three concepts:
**Search Artifact Hub (public charts from all repositories):**
```bash
helm search hub [keyword]
```
**Search added repositories (local search, faster):**
```bash
helm search repo [keyword]
```
**Find repository URLs:**
```bash
helm search hub --list-repo-url [keyword]
```
**Add a repository:**
```bash
helm repo add [NAME] [URL]
helm repo update
```
Example:
```bash
helm repo add bitnami https://charts.bitnami.com/bitnami
helm search repo wordpress
```
**Basic installation:**
```bash
helm install [RELEASE_NAME] [CHART]
```
**Auto-generate release name:**
```bash
helm install [CHART] --generate-name
```
**View available configuration options:**
```bash
helm show values [CHART]
```
**Install with custom values file:**
```bash
helm install -f values.yaml [RELEASE_NAME] [CHART]
```
**Install with inline overrides:**
```bash
helm install --set key=value [RELEASE_NAME] [CHART]
```
**Combine multiple methods:**
```bash
helm install -f values.yaml --set key=value [RELEASE_NAME] [CHART]
```
**Simple key-value:**
```bash
--set name=value
```
**Nested values:**
```bash
--set outer.inner=value
```
**Lists:**
```bash
--set name={a,b,c}
```
**Array indexing:**
```bash
--set servers[0].port=80,servers[0].host=example
```
**Null or empty:**
```bash
--set name=[],key=null
```
**Escape special characters:**
```bash
--set name=value1\,value2
--set nodeSelector."kubernetes\.io/role"=master
```
**Check release status:**
```bash
helm status [RELEASE_NAME]
```
**List all releases:**
```bash
helm list
helm list --all-namespaces
```
**View release values:**
```bash
helm get values [RELEASE_NAME]
```
**View all release information:**
```bash
helm get all [RELEASE_NAME]
```
**Upgrade with new values:**
```bash
helm upgrade -f values.yaml [RELEASE_NAME] [CHART]
```
**Upgrade or install if not exists:**
```bash
helm upgrade --install [RELEASE_NAME] [CHART]
```
**Reset previously set values:**
```bash
helm upgrade --reset-values [RELEASE_NAME] [CHART]
```
**Reuse existing values:**
```bash
helm upgrade --reuse-values [RELEASE_NAME] [CHART]
```
**Rollback to previous revision:**
```bash
helm rollback [RELEASE_NAME]
```
**Rollback to specific revision:**
```bash
helm rollback [RELEASE_NAME] [REVISION]
```
**View release history:**
```bash
helm history [RELEASE_NAME]
```
**Uninstall a release:**
```bash
helm uninstall [RELEASE_NAME]
```
**Keep release history after uninstall:**
```bash
helm uninstall --keep-history [RELEASE_NAME]
```
**List added repositories:**
```bash
helm repo list
```
**Update repository index:**
```bash
helm repo update
```
**Remove a repository:**
```bash
helm repo remove [NAME]
```
**Show chart information:**
```bash
helm show chart [CHART]
```
**Show README:**
```bash
helm show readme [CHART]
```
**Show all chart information:**
```bash
helm show all [CHART]
```
**Install WordPress with custom database credentials:**
```bash
echo '{mariadb.auth.database: myblog, mariadb.auth.username: bloguser}' > values.yaml
helm install my-blog bitnami/wordpress -f values.yaml
```
**Upgrade with new configuration:**
```bash
helm upgrade my-blog bitnami/wordpress --set replicaCount=3
```
**Rollback failed upgrade:**
```bash
helm rollback my-blog
```
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/helm-chart-management/raw