Skip to content

Helm

Install Helm

Via the official install script:

$ curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

Via package managers:

1
2
3
4
5
6
7
# macOS
$ brew install helm

# Debian / Ubuntu
$ curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
$ sudo apt-get update && sudo apt-get install helm

Verify installation:

$ helm version

Repositories

Add a chart repository:

$ helm repo add bitnami https://charts.bitnami.com/bitnami

List configured repos:

$ helm repo list

Update repo index (fetch latest charts):

$ helm repo update

Remove a repo:

$ helm repo remove bitnami

Search charts

Search in configured repos:

$ helm search repo nginx

Show all available versions of a chart:

$ helm search repo nginx --versions

Search on Artifact Hub:

$ helm search hub wordpress

Inspect a chart

Show chart metadata:

$ helm show chart bitnami/nginx

Show default values (useful before installing):

$ helm show values bitnami/nginx

Show the full README:

$ helm show readme bitnami/nginx

Install a chart

Basic install (generates a release name):

$ helm install my-release bitnami/nginx

Install in a specific namespace (create it if needed):

$ helm install my-release bitnami/nginx -n my-namespace --create-namespace

Override values inline:

$ helm install my-release bitnami/nginx --set service.type=ClusterIP --set replicaCount=2

Override values from a file:

$ helm install my-release bitnami/nginx -f custom-values.yaml

Install a specific chart version:

$ helm install my-release bitnami/nginx --version 15.0.0

Dry-run (render templates without installing):

$ helm install my-release bitnami/nginx --dry-run

List releases

1
2
3
$ helm list
$ helm list -n my-namespace
$ helm list --all-namespaces

Upgrade a release

Upgrade with new values:

$ helm upgrade my-release bitnami/nginx --set replicaCount=3

Upgrade from a values file:

$ helm upgrade my-release bitnami/nginx -f updated-values.yaml

Install if not present, upgrade if it is:

$ helm upgrade --install my-release bitnami/nginx -f values.yaml

Rollback

View release history:

$ helm history my-release

Rollback to previous revision:

$ helm rollback my-release

Rollback to a specific revision:

$ helm rollback my-release 2

Uninstall a release

$ helm uninstall my-release
$ helm uninstall my-release -n my-namespace

Get release info

Show computed values for a release:

$ helm get values my-release

Show rendered manifests:

$ helm get manifest my-release

Show release status:

$ helm status my-release

Template (local rendering)

Render templates locally without connecting to a cluster:

$ helm template my-release bitnami/nginx -f values.yaml