Make and Share your own Helm package on GitHub Pages
Helm packages, also known as charts, are a collection of pre-configured Kubernetes resources bundled together. Here’s a step-by-step guide to create and share your Helm package on GitHub Pages:
- GitHub Account
Step 1: Create a Helm Chart
Create a directory structure for your Helm chart. A basic structure might look like this:
- charts/: This directory can contain subcharts if your chart depends on other charts.
- templates/: Place your Kubernetes resource templates (e.g., YAML files) in this directory.
- values.yaml: Define default configuration values for your chart.
- Chart.yaml: Provide metadata about your chart.
Step 2: Package Your Helm Chart
To package your Helm chart into a distributable package (tgz file), run the following command from the directory containing your chart:
helm package .
This command will create a .tgz file in the current directory, which contains your Helm chart.
Step 3: Create a GitHub Repository
Create a new GitHub repository to host your Helm chart. Make sure it’s public or accessible to your intended audience.
Step 4: Publish Your Helm Chart on GitHub Pages
Here’s how to publish your Helm chart on GitHub Pages. Create a branch (e.g., gh-pages) in your GitHub repository
git checkout -b gh-pages
Move your .tgz Helm chart package to this branch and commit it
mv my-helm-chart-*.tgz index.tgz
git add index.tgz
git commit -m "Add Helm chart package"
Push the changes to your GitHub repository
git push origin gh-pages
After pushing, you can access your Helm chart package via the GitHub Pages URL. The URL structure is typically
For example, if your GitHub username is “myuser” and your repository is “my-helm-chart-repo,” the URL would be:
Step 5: Use the Helm Chart
To use your Helm chart, others can add your GitHub Pages URL as a Helm chart repository:
helm repo add my-helm-chart-repo https://myuser.github.io/my-helm-chart-repo
They can then install your Helm chart as they would with any other Helm chart
helm install my-release my-helm-chart-repo/my-helm-chart
Now, your Helm chart is available for others to use and share by adding your Helm chart repository to their Helm configurations.