Helm is the Kubernetes package manager. Charts bundle all Kubernetes manifests with a templating system (Go templates). values.yaml provides default configuration; users override with -f values.override.yaml or --set. Releases are versioned — helm rollback returns to a previous version. Helm hooks (pre-install, post-upgrade) run Jobs at specific lifecycle points. Helmfile orchestrates multiple charts with environment-specific value overrides.
Each stage in order — click any step to read what it does.
Helm chart directory structure and key files.
The trade-offs worth knowing before you build this.
helm diff upgrade shows exactly which Kubernetes resources will change, be added, or deleted. Reviewing the diff before applying prevents surprise infrastructure changes in production.
Run database migrations in a Helm pre-upgrade hook Job before the new application version deploys. This ensures migrations complete before the new code that depends on them starts serving traffic.
helm upgrade --atomic rolls back the release automatically if it fails within --timeout (default 5m). Without --atomic, a failed upgrade leaves the release in a failed state requiring manual intervention.
Sign in to share your feedback and join the discussion.