tezvyn:

Helm Repository: Your Private App Store for Kubernetes

AI-drafted, machine-checkedSource: helm.shbeginner

A Helm repository is a private app store for your Kubernetes applications. It's just an HTTP server with a catalog file (`index.yaml`) pointing to your packaged charts. Use it to share reusable app templates across teams without using public registries.

WHY IT EXISTS To solve the problem of sharing and reusing Kubernetes application definitions. Without a central repository, teams would pass around raw YAML files or git repos, which is chaotic and hard to version. A Helm repository provides a simple, centralized, and versioned distribution system for your applications.

THE MENTAL MODEL It's a package manager repository, like for apt or yum, but for Kubernetes applications. The entire repository is just a web-accessible folder containing two things: packaged charts (as .tgz files) and a single index.yaml file that acts as a catalog, telling Helm what charts exist, their versions, and where to download them.

HOW IT WORKS A Helm repository is any HTTP server that can serve files. When you run helm repo add my-repo <URL>, Helm downloads the index.yaml from that URL and caches it. When you later run helm install my-repo/nginx, Helm consults its local copy of the index file to find the download URL for the Nginx chart's .tgz package. It then fetches and installs that package. The server only needs to handle simple GET requests.

WHEN TO USE IT Use a classic Helm repository when you need a simple, low-tech way to share charts internally. It's extremely easy to set up on static file hosting like GitHub Pages, Amazon S3, or Google Cloud Storage. It's great for getting started or for open-source projects where public, unauthenticated access is sufficient.

WHEN NOT TO USE IT Avoid this model if you need robust authentication, authorization, or tight integration with your container image workflows. The classic repository has very limited security features. Modern best practice is shifting towards using OCI (Open Container Initiative) registries—the same kind you use for Docker images—to store Helm charts, as they offer superior security and management capabilities.

ONE CANONICAL EXAMPLE A platform team creates a standard chart for deploying their company's microservices. They package it and host it in a private repository on an S3 bucket. Any developer can then add this repo (helm repo add internal-charts ...) and deploy new services with one command (helm install internal-charts/standard-service --set image.tag=1.2.3), ensuring all services follow the same deployment pattern.

Read the original → helm.sh

Get five bites like this every day.

Tezvyn delivers a daily feed of 60-second tech bites with quizzes to lock in what you learn.