Skip to main content

Helm Chart

A Helm chart is a templated, versioned package of Kubernetes manifests that Helm installs and manages as a single application release.

A Helm chart is a package format for Kubernetes applications. Helm, often called the package manager for Kubernetes, uses charts to install, upgrade, roll back, and uninstall applications as cohesive, versioned units.

How It Works

A chart is a directory of templated manifests plus metadata. Templates contain placeholders filled from a values.yaml file, so the same chart can be customized per environment by overriding values. The chart's Chart.yaml declares its name, version, and dependencies on other charts (subcharts).

Installing a chart creates a release, a named, tracked instance of that chart in a cluster. Helm renders the templates with the supplied values and applies the resulting manifests. Upgrading a release re-renders and applies changes, and Helm keeps revision history so a release can be rolled back. Charts are distributed through chart repositories or stored as OCI artifacts in a container registry.

Why It Matters

Real applications often comprise many related resources: Deployments, Services, ConfigMaps, and more. Managing them individually is error-prone. Helm packages them together, parameterizes them, and versions them, which simplifies repeatable installs and upgrades across environments.

Charts also enable a sharing ecosystem: common software like databases, ingress controllers, and monitoring stacks ships as reusable charts. For applications with complex operational logic, an Operator may be used instead of or alongside a chart.

Related Terms

A Helm chart packages resources such as Deployments and ConfigMaps, can be stored in a container registry, and complements the Operator pattern for lifecycle management.