This repository demonstrates various Helm commands and workflows for managing Kubernetes applications. Below, you'll find step-by-step examples, explanations, and tips to help you effectively use Helm for deploying, upgrading, and managing your applications.
- Introduction to Helm
- Helm Hub Search
- Adding and Listing Helm Repositories
- Searching for Charts
- Installing Charts
- Listing and Managing Releases
- Upgrading a Release
- Rolling Back a Release
- Packaging Custom Charts
Helm is a package manager for Kubernetes that simplifies the deployment and management of applications. It enables you to:
- Install predefined application configurations (charts).
- Upgrade or roll back releases.
- Package your own Kubernetes manifests into reusable charts.
Search for charts on Artifact Hub:
helm search hub consul
Output:
URL CHART VERSION APP VERSION DESCRIPTION
https://artifacthub.io/packages/helm/warjiang/consul 1.3.0 1.17.0 Official HashiCorp Consul Chart
https://artifacthub.io/packages/helm/wener/consul 1.6.1 1.20.1 Official HashiCorp Consul Chart
Add a repository:
helm repo add bitnami https://charts.bitnami.com/bitnami
Output:
"bitnami" has been added to your repositories
List repositories:
helm repo list
Output:
NAME URL
bitnami https://charts.bitnami.com/bitnami
puppet https://puppetlabs.github.io/puppetserver-helm-chart
hashicorp https://helm.releases.hashicorp.com
Search within repositories:
helm search repo wordpress
Output:
NAME CHART VERSION APP VERSION DESCRIPTION
bitnami/wordpress 24.0.9 6.7.1 WordPress is the world's most popular blogging platform...
bitnami/wordpress-intel 2.1.31 6.1.1 DEPRECATED WordPress for Intel...
Install a chart from a repository:
helm install amaze-surf bitnami/apache
Output:
NAME: amaze-surf
LAST DEPLOYED: <timestamp>
STATUS: deployed
NOTES:
1. Get the Apache URL by running:
kubectl get svc --namespace default amaze-surf-apache
List installed releases:
helm list
Output:
NAME NAMESPACE REVISION STATUS CHART APP VERSION
amaze-surf default 1 deployed apache-11.2.22 2.4.62
Uninstall a release:
helm uninstall amaze-surf
Output:
release "amaze-surf" uninstalled
Remove a repository:
helm repo remove hashicorp
Output:
"hashicorp" has been removed from your repositories
Upgrade a deployed release:
helm upgrade dazzling-web bitnami/nginx --version 13
Output:
Release "dazzling-web" has been upgraded. Happy Helming!
Rollback a release to a previous revision:
helm rollback dazzling-web
Output:
Rollback was a success! Happy Helming!
Package a custom chart:
helm package ./webapp-color/
Output:
Successfully packaged chart and saved it to: ./webapp-color-0.1.0.tgz
This guide outlines essential Helm commands for managing Kubernetes applications. By leveraging these commands, you can simplify deployment workflows, ensure consistency, and make your DevOps processes more efficient.
For more information, refer to the Helm Documentation.