Core Concepts: Chart, Release, Repository

A chart is the package, a release is an installed instance of a chart, and a repository is where charts are stored and shared.

Three terms appear constantly in Helm. Learn them once and everything else clicks.

Chart

A chart is the package: a folder of templates, default values, and metadata that describes a Kubernetes application.

Release

A release is one running instance of a chart in a cluster. Install the same chart twice with different names and you get two independent releases. Each release has its own revision history.

Repository

A repository is a place charts are stored and shared over HTTP (or an OCI registry). You add a repo, then install charts from it by name.

A chart is installed as a release, which creates Kubernetes resourcesCharttemplates + valueshelm installReleasenamed instanceDeploymentServiceConfigMap
A chart becomes a release, and a release manages real Kubernetes resources.

Example

Example · bash
# One chart, two independent releases
helm install web-a bitnami/nginx
helm install web-b bitnami/nginx

# List them
helm list

When to use it

  • A developer adds the Bitnami chart repository to pull community-maintained charts for PostgreSQL and Redis instead of writing Kubernetes manifests from scratch.
  • An operator installs the same WordPress chart twice in different namespaces to create isolated staging and production releases from a single chart.
  • A release manager runs helm history my-app to see all revisions of a release and picks which numbered revision to roll back to after a bad upgrade.

More examples

Add repository and find chart

Registers a repository, syncs its index, and searches it to find a chart -- illustrating the repository concept.

Example · bash
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
helm search repo bitnami/postgresql

Install chart as named release

Creates a release named prod-db from the bitnami/postgresql chart and lists releases to show the named instance.

Example · bash
# 'bitnami/postgresql' is the chart; 'prod-db' is the release name
helm install prod-db bitnami/postgresql \
  --namespace databases --create-namespace
helm list -n databases

Show release revision history

Prints every revision of the prod-db release with its status, chart version, and description, showing how one release accumulates revisions over time.

Example · bash
helm history prod-db -n databases

Discussion

  • Be the first to comment on this lesson.