Managing dozens of YAML files for a single application is difficult. Helm solves this by packaging all your Kubernetes manifests into a single Chart, allowing for easy versioning, sharing, and configuration.
1. Why Use Helm?
- Templating: Use variables instead of hardcoded values in YAML.
- Release Management: Version your deployments and rollback with one command.
- Sharing: Use pre-made charts for common software (Redis, Nginx, Prometheus).
2. Basic Helm Commands
Add a Repository
Action:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo updateResult:
"bitnami" has been added to your repositories
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "bitnami" chart repositoryInstall a Chart
Action:
# Install Redis with a custom password
helm install my-redis bitnami/redis --set auth.password=MySecurePasswordResult:
NAME: my-redis
LAST DEPLOYED: Fri Apr 10 12:05:00 2026
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
...Redis can be accessed via port 6379 on the following DNS name...3. Creating Your Own Chart
You can create a custom chart for your own applications.
Action:
helm create my-appResult:
Creating my-appThe Chart Structure:
Chart.yaml: Metadata about the chart.values.yaml: Default configuration values.templates/: The actual Kubernetes YAML files with template placeholders.
4. Managing Releases
Upgrade a Release
Action:
# Change a configuration value and upgrade
helm upgrade my-redis bitnami/redis --set auth.password=NewPasswordRollback a Release
Action:
# Revert to the previous version
helm rollback my-redis 1Result:
Rollback was a success! Happy Helming.Summary
- Chart: A package of Kubernetes manifests.
- Release: A specific instance of a chart running in your cluster.
- Values: Variables used to customize the chart.
- Helm Hub: Where to find community charts.