Project reference ↗

ChartMuseum gives a team a place to publish and retrieve Helm charts, the packages used to install applications on Kubernetes. It serves the repository index and chart files that Helm clients need, and provides an upload API for publishing new versions. It is useful when you want to operate a traditional Helm repository backed by your chosen storage. An OCI registry is another distribution model, with different publishing commands and operational choices.

Current guidance

ChartMuseum provides a traditional Helm chart repository and an HTTP API for uploading chart packages. The old stable/chartmuseum package belongs to the archived helm/charts repository; use the application’s upstream documentation to evaluate a current deployment.

Choose a traditional chart-repository service when its workflow and storage model fit the organization. Compare the authentication, retention, mirroring and operational responsibilities with an OCI registry already used for images.

The ChartMuseum upload plugin documents helm cm-push. Helm’s built-in helm push uploads to an OCI registry and is not an interchangeable command for a ChartMuseum HTTP endpoint. Check the plugin’s compatibility with your Helm release before updating automation.

Preserve old chart artifacts needed for reproducible deployments and rollback. Test clean-client retrieval and repository credentials, and do not assume that migrating the chart index also migrates referenced container images.

Historical upstream link check · 2026-10-09

The recorded upstream address responded successfully (HTTP 200) on 2026-10-09. GitHub confirms that helm/charts is archived: this is a historical chart distribution, not evidence that the application itself is retired. Link availability does not certify the historical installation instructions or current security support.

Source for this check ↗

Website availability is separate from project, chart and image support. Use the current guidance and primary sources on this page to assess the distribution.

The original record

Historical Kubedex content

Preserved for context. Commands, versions, prices and results below reflect the original research.

ChartMuseum is an open-source Helm Chart Repository written in Go (Golang), with support for cloud storage backends, including Google Cloud Storage, Amazon S3,
Microsoft Azure Blob Storage, Alibaba Cloud OSS Storage and Openstack Object Storage.

Works as a valid Helm Chart Repository, and also provides an API for uploading new chart packages to storage etc.

Powered by some great Go technology:

Kubernetes Helm – for working with charts, generating repository index
Gin Web Framework – for HTTP routing
cli – for command line option parsing
zap – for logging

Prerequisites

Kubernetes with extensions/v1beta1 available

[If enabled] A persistent storage resource and RW access to it

[If enabled] Kubernetes StorageClass for dynamic provisioning

Custom Downloader

This plugin also defines the cm:// protocol that you may specify when adding a repo:

$ helm repo add chartmuseum cm://my.chart.repo.com
The only real difference with this vs. simply using http/https, is that the environment variables above are recognized by the plugin and used to set the Authorization
header appropriately. As in, if you do not add your repo in this way, you are unable to use token-based auth for GET requests (downloading index.yaml, chart .tgzs,
etc).

By default, cm:// translates to https://. If you must use http://, you can set the following env var:

$ export HELM_REPO_USE_HTTP=”true”

Cache

By default, the contents of index.yaml (per-tenant) will be stored in memory. This means that memory usage will continue to grow indefinitely as more charts are added
to storage.

You may wish to offload this to an external cache store, especially for large, multitenant installatio

Sources & further reading

  1. ChartMuseum upstream
  2. Helm OCI registries
  3. ChartMuseum documentation
  4. ChartMuseum cm-push plugin
  5. Recovered historical source (Common Crawl index)

Spotted something that needs another look?

Help improve this page →