Helm - Kubernetes Package Manager
Helm is a package manager for Kubernetes that helps you define, install, and upgrade complex Kubernetes applications.
Installation
Ubuntu/Debian
# Download Helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
# Verify
helm version
# Add Helm repositories
helm repo add stable https://charts.helm.sh/stable
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo updateCentOS/RHEL
# Install Helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
# Verify
helm versionBasic Usage
# Search for charts
helm search repo nginx
# Install chart
helm install my-release stable/nginx
# List releases
helm list
# Check release status
helm status my-release
# Upgrade release
helm upgrade my-release stable/nginx --values values.yaml
# Rollback release
helm rollback my-release 1
# Uninstall release
helm uninstall my-release
# Get values of running release
helm get values my-releaseCreate Custom Chart
# Create new chart
helm create mychart
# Chart structure
mychart/
├── Chart.yaml
├── values.yaml
├── templates/
│ ├── deployment.yaml
│ ├── service.yaml
│ └── ingress.yaml
└── charts/
# Validate chart
helm lint mychart
# Package chart
helm package mychart
# Install from local chart
helm install my-app ./mychartAdvanced
# Install with custom values
helm install my-app bitnami/nginx -f values.yaml
# Dry run (preview what would be installed)
helm install my-app bitnami/nginx --dry-run --debug
# Install specific version
helm install my-app bitnami/nginx --version 15.0.0
# Add custom repository
helm repo add myrepo https://charts.example.com
helm repo updateTroubleshooting
# Check Helm chart syntax
helm lint mychart
# Get release history
helm history my-app
# View rendered templates
helm template my-app ./mychart
# Check pod status
kubectl get pods -l app=my-app