curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
helm repo add bitnami https://charts.bitnami.com/bitnami
helm show values bitnami/nginx
helm show chart bitnami/nginx
helm pull bitnami/nginx --untar
helm install mynginx bitnami/nginx
helm install mynginx bitnami/nginx -n web --create-namespace
Install with custom values
helm install mynginx bitnami/nginx -f values.yaml
helm install mynginx bitnami/nginx --set service.type=NodePort
helm install mynginx bitnami/nginx --dry-run --debug
helm upgrade mynginx bitnami/nginx
helm upgrade mynginx bitnami/nginx -f values.yaml
helm upgrade --install mynginx bitnami/nginx
helm get values mynginx -a
helm template mynginx ./mychart
helm template mynginx ./mychart -f values.yaml
helm template mynginx ./mychart | kubectl apply --dry-run=client -f -
helm install mynginx bitnami/nginx --debug
helm upgrade mynginx bitnami/nginx --dry-run
Check Kubernetes resources
kubectl describe pod POD_NAME -n web
kubectl logs POD_NAME -n web
Flag
Description
-n
Namespace
-f
Values file
--set
Override values
--create-namespace
Create namespace
--dry-run
Simulate command
--debug
Verbose output
--wait
Wait until ready
--timeout
Set timeout
--atomic
Rollback on failure
helm registry login registry.example.com
helm pull oci://registry.example.com/charts/nginx
helm push mychart-0.1.0.tgz oci://registry.example.com/charts
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
helm install ingress ingress-nginx/ingress-nginx \
-n ingress-nginx \
--create-namespace
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install monitoring prometheus-community/kube-prometheus-stack \
-n monitoring \
--create-namespace
Upgrade with rollback safety
helm upgrade --install app ./chart \
-n production \
-f values-prod.yaml \
--atomic \
--wait
helm uninstall RELEASE_NAME
Remove old revisions secret/configmaps
kubectl get secrets -A | grep helm