What Are Custom Values in Helm and How to Use Them?
In the world of Kubernetes, Helm is an indispensable tool that simplifies deployment by managing Kubernetes applications. What Are Custom Values in Helm? Helm charts come with a default set of values defined in their values.yaml file. However, every organization's needs are unique, and often, the defaults do not fit every use case. This is where custom values come into play. Custom values allow you to override the default settings in a Helm chart, thus tailoring the application to meet your specific requirements without altering the chart itself. Why Use Custom Values? Customization: Modify charts to suit your particular needs. Reusability: Use the same base chart for different environments (development, staging, production) with minimal changes. Maintainability: Keep updated with upstream changes while retaining your custom configurations by only overriding necessary values. How to Use Custom Values in Helm To utilize custom values, you should create a file named myvalues.yaml (or any desired name) to provide your custom parameters. Here’s a basic outline of how to achieve this: Step 1: Create a Custom Values File Create a new file, myvalues.yaml, and override only the values you need to customize. For example: replicaCount: 3 service: type: LoadBalancer port: 80 resources: limits: cpu: 200m memory: 512Mi Step 2: Apply the Custom Values During Installation or Upgrade Use the --values option with the helm install or helm upgrade command: helm install myrelease mychart -f myvalues.yaml or for an upgrade: helm upgrade myrelease mychart -f myvalues.yaml This command overrides the default values.yaml settings with your custom configurations. Step 3: Verify the Deployment After the Helm installation or upgrade, verify the changes by checking the deployed resources. You can do this using kubectl: kubectl get all -l release=myrelease Best Practices for Custom Values Keep It Simple: Only override necessary values. Documentation: Clearly document custom values for maintainability. Version Control: Keep your myvalues.yaml file in version control to track changes over time. Further Reading To learn more about setting up Kubernetes deployment in a CI/CD pipeline, check out this guide on How to Install Helm in Travis Pipeline. For an in-depth look at port-forwarding in Kubernetes, explore the topic on How to Use Kubectl Port-Forward in 2025. If you're interested in creating a Kubernetes cluster with Vagrant, see the article How to Launch Kubernetes Cluster Using Vagrant. Custom values in Helm are a powerful feature that bridges the gap between general-use and bespoke deployment scenarios. By mastering custom values, you can ensure that your Kubernetes deployments are both flexible and scalable.

In the world of Kubernetes, Helm is an indispensable tool that simplifies deployment by managing Kubernetes applications.
What Are Custom Values in Helm?
Helm charts come with a default set of values defined in their values.yaml
file. However, every organization's needs are unique, and often, the defaults do not fit every use case. This is where custom values come into play. Custom values allow you to override the default settings in a Helm chart, thus tailoring the application to meet your specific requirements without altering the chart itself.
Why Use Custom Values?
- Customization: Modify charts to suit your particular needs.
- Reusability: Use the same base chart for different environments (development, staging, production) with minimal changes.
- Maintainability: Keep updated with upstream changes while retaining your custom configurations by only overriding necessary values.
How to Use Custom Values in Helm
To utilize custom values, you should create a file named myvalues.yaml
(or any desired name) to provide your custom parameters. Here’s a basic outline of how to achieve this:
Step 1: Create a Custom Values File
Create a new file, myvalues.yaml
, and override only the values you need to customize. For example:
replicaCount: 3
service:
type: LoadBalancer
port: 80
resources:
limits:
cpu: 200m
memory: 512Mi
Step 2: Apply the Custom Values During Installation or Upgrade
Use the --values
option with the helm install
or helm upgrade
command:
helm install myrelease mychart -f myvalues.yaml
or for an upgrade:
helm upgrade myrelease mychart -f myvalues.yaml
This command overrides the default values.yaml
settings with your custom configurations.
Step 3: Verify the Deployment
After the Helm installation or upgrade, verify the changes by checking the deployed resources. You can do this using kubectl
:
kubectl get all -l release=myrelease
Best Practices for Custom Values
- Keep It Simple: Only override necessary values.
- Documentation: Clearly document custom values for maintainability.
-
Version Control: Keep your
myvalues.yaml
file in version control to track changes over time.
Further Reading
- To learn more about setting up Kubernetes deployment in a CI/CD pipeline, check out this guide on How to Install Helm in Travis Pipeline.
- For an in-depth look at port-forwarding in Kubernetes, explore the topic on How to Use Kubectl Port-Forward in 2025.
- If you're interested in creating a Kubernetes cluster with Vagrant, see the article How to Launch Kubernetes Cluster Using Vagrant.
Custom values in Helm are a powerful feature that bridges the gap between general-use and bespoke deployment scenarios. By mastering custom values, you can ensure that your Kubernetes deployments are both flexible and scalable.