Customizing and Managing Releases
Learn to customize Helm chart values and manage the lifecycle of Helm releases.
Customizing and Managing Releases is a free DevOps Bootcamp lesson on CoddyKit — lesson 3 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the DevOps Bootcamp learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
Customize Your Helm Charts
Helm charts are powerful templates, but you'll often need to tweak their configurations to fit your specific needs or environment.
This lesson teaches you how to customize chart values and manage the lifecycle of your deployed applications, known as Helm Releases.
Understanding values.yaml
Every Helm chart comes with a values.yaml file. This file defines all the default configuration options for the chart.
You can think of it as the blueprint for how the application will be deployed, with sensible defaults for everything from image versions to resource limits.
Quick Overrides: --set Flag
For simple, quick changes, you can override values directly from the command line using the --set flag during helm install or helm upgrade.
This is handy for changing a single value without creating a separate file.
helm upgrade my-web-app bitnami/nginx \
--set replicaCount=2 \
--set image.tag=1.21.6 -n defaultCustom values.yaml Files
For more extensive or permanent customizations, it's best practice to create your own my-values.yaml file.
You then tell Helm to use this file with the -f (or --values) flag. Helm will merge your custom values with the chart's default values.yaml.
# my-custom-values.yaml
replicaCount: 2
image:
tag: 1.21.6
service:
type: NodePortApplying Custom Values
Once you have your custom values.yaml file, you can apply it during installation or upgrade.
If a value is present in both your custom file and the chart's default, your custom value takes precedence.
helm upgrade my-web-app bitnami/nginx \
-f my-custom-values.yaml -n defaultUpdating Releases: helm upgrade
After you've initially installed a chart, you'll use helm upgrade to apply any changes, whether it's a new chart version or updated configuration values.
Helm intelligently updates only the necessary Kubernetes resources, ensuring minimal downtime.
# First install
helm install my-app bitnami/nginx -n dev
# Later, upgrade with new settings
helm upgrade my-app bitnami/nginx \
--set service.type=NodePort -n devRelease History: helm history
Every time you install or upgrade a Helm release, a new revision is created. You can view the history of these revisions using helm history.
This command shows you a timeline of changes, which is invaluable for debugging or understanding deployments.
helm history my-app -n devRolling Back Changes: helm rollback
Made a mistake in an upgrade? No problem! Helm allows you to quickly revert to a previous, stable revision using helm rollback.
Just specify the release name and the revision number you want to revert to (from helm history output).
# Rollback to revision 1
helm rollback my-app 1 -n devChecking Release Status: helm status
To get a quick overview of a deployed release, including its status, deployed Kubernetes resources, and any notes provided by the chart, use helm status.
This helps confirm if your application is running as expected.
helm status my-app -n devManaging Helm Releases Quiz
Which of the following are valid and recommended ways to customize Helm chart values during installation or upgrade?
Recap: Customize & Manage
You've learned how to make Helm charts your own! You can customize values using the --set flag or by providing a custom values.yaml file with -f.
You also mastered managing your applications' lifecycles with helm upgrade, reviewing changes with helm history, reverting with helm rollback, and checking status with helm status.
Frequently asked questions
Is the “Customizing and Managing Releases” lesson free?
Yes — the full text of “Customizing and Managing Releases” is free to read here on the web, and the DevOps Bootcamp course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the DevOps Bootcamp course, upgrade to CoddyKit PRO.
What will I learn in “Customizing and Managing Releases”?
Learn to customize Helm chart values and manage the lifecycle of Helm releases. You practise DevOps Bootcamp with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start DevOps Bootcamp?
No prior experience is required. DevOps Bootcamp on CoddyKit is structured for beginners through advanced learners; this is — lesson 3 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Customizing and Managing Releases” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this DevOps Bootcamp lesson?
Yes. Every DevOps Bootcamp lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Introduction to Helm Charts
- Deploying Applications with Helm
- Customizing and Managing Releases
- Building and Sharing Your Own Helm Charts