Search Agent Sky
← Back to search Memory Lane Recent answers
Cited source trail
What is Helm chart in K8s
Sources checkedhelm.sh
Next step

Research any question with live sources, then publish the cited answer as a free shareable link.

# Helm Chart in Kubernetes A **Helm chart** is Helm's packaging format for Kubernetes applications — it's a collection of files that describe a related set of Kubernetes resources, bundled into a single versioned, shareable unit. ## Definition > "Helm uses a packaging format called charts. A chart is a collection of files that describe a related set of Kubernetes resources. A single chart might be used to deploy something simple, like a memcached pod, or something complex, like a full web app stack with HTTP servers, databases, caches, and so on." — [Helm docs](https://helm.sh/docs/topics/charts/) Helm is the package manager for Kubernetes. Instead of writing and maintaining many manifests by hand (Deployments, Services, ConfigMaps, etc.), you package them into one chart that you can **version, share, install, and roll back as a single release** — the way Homebrew/apt/yum treat OS software. ([Introduction to Helm](https://helm.sh/docs/intro/introduction)) ## Key concepts (three components) - **Chart** – the Helm package containing all resource definitions needed to run an app/tool/service. - **Repository** – where charts are stored and shared (found via Artifact Hub). - **Release** – a running instance of a chart installed into a cluster. Each `helm install` creates a new release. ([Introduction to Helm](https://helm.sh/docs/intro/introduction)) ## Chart file structure A chart is a directory named after the chart (e.g. `wordpress/`) containing: ([Helm docs](https://helm.sh/docs/topics/charts/)) | Path | Purpose | |------|---------| | `Chart.yaml` | Metadata (required) — name, version, apiVersion, etc. | | `values.yaml` | Default configuration values | | `templates/` | Templates that render into valid Kubernetes manifests | | `charts/` | Dependent (sub)charts | | `crds/` | Custom Resource Definitions | | `LICENSE`, `README.md`, `values.schema.json`, `templates/NOTES.txt` | Optional | Helm reserves the `charts/`, `crds/`, and `templates/` directories and the listed filenames. ## Chart.yaml fields Required fields: `apiVersion`, `name`, `version`. Optional: `kubeVersion`, `description`, `type`, `keywords`, `home`, `sources`, `dependencies`, `maintainers`, `icon`, `appVersion`, `deprecated`, `annotations`. (`apiVersion: v2` is for charts requiring Helm 3+.) ([Helm docs](https://helm.sh/docs/topics/charts/)) ## Versioning Every chart must have a version number, normally following **SemVer 2**. Version numbers act as release markers; packages are identified by name + version (e.g. an nginx chart with `version: 1.2.3` is named `nginx-1.2.3.tgz`). Non-SemVer names are disallowed. ([Helm docs](https://helm.sh/docs/topics/charts/)) ## How you use it - Find charts: `helm search hub` (searches Artifact Hub) or `helm search repo` (searches your added repos). - Install: `helm install <release-name> <chart>` — e.g. `helm install happy-panda bitnami/wordpress`. - Helm installs resources in a defined order (Namespace, ConfigMap, Secret, ... Deployment, StatefulSet, Ingress, etc.) and does not wait for all resources to be running before exiting. ([Using Helm](https://helm.sh/docs/intro/using_helm/)) **In short:** a Helm chart is a reusable, versioned package of templated Kubernetes manifests plus default values — the unit Helm uses to install, upgrade, and roll back applications on a cluster.

Sources visited

1navigatehttps://helm.sh/docs/topics/charts/
2navigatehttps://helm.sh/docs/intro/using_helm/
3navigatehttps://helm.sh/docs/intro/
4clickundefined
Shared by Unchained Sky · Sep 23, 2026

Ask your own question

Search live sources for a question you choose. You can publish the cited answer as a free link.