{"id":23629982,"url":"https://github.com/frnn4268/k8s_helm_demos","last_synced_at":"2026-04-29T22:33:12.726Z","repository":{"id":264945503,"uuid":"894564182","full_name":"Frnn4268/K8s_helm_demos","owner":"Frnn4268","description":"A repository for practicing Kubernetes deployments using Helm. It includes examples of managing third-party charts like Bitnami's PostgreSQL, creating custom Helm charts, and working with minimal Helm templates to understand key features like variables, conditionals, loops, and chart metadata. ","archived":false,"fork":false,"pushed_at":"2024-11-26T22:24:28.000Z","size":86,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-18T20:35:56.898Z","etag":null,"topics":["bitnami","helm","helm-charts","kubernetes","postgresql"],"latest_commit_sha":null,"homepage":"","language":"Smarty","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Frnn4268.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-26T15:21:00.000Z","updated_at":"2024-11-26T22:24:32.000Z","dependencies_parsed_at":"2024-11-26T23:35:22.029Z","dependency_job_id":null,"html_url":"https://github.com/Frnn4268/K8s_helm_demos","commit_stats":null,"previous_names":["frnn4268/k8s_helm_demos"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Frnn4268/K8s_helm_demos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Frnn4268%2FK8s_helm_demos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Frnn4268%2FK8s_helm_demos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Frnn4268%2FK8s_helm_demos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Frnn4268%2FK8s_helm_demos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Frnn4268","download_url":"https://codeload.github.com/Frnn4268/K8s_helm_demos/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Frnn4268%2FK8s_helm_demos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32446678,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"ssl_error","status_checked_at":"2026-04-29T22:10:49.234Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bitnami","helm","helm-charts","kubernetes","postgresql"],"created_at":"2024-12-28T01:19:57.095Z","updated_at":"2026-04-29T22:33:12.704Z","avatar_url":"https://github.com/Frnn4268.png","language":"Smarty","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Helm\n\nHelm (https://helm.sh/) has become the de facto standard for packaging and distributing applications for kubernetes.\n\nIt provides a way to assemble many kubernetes resources and uses go's templating language to create custom interfaces so that consumers of the chart can configure the installation to meet their needs.\n\n![helm-diagram.png](readme-assets/helm-diagram.png)\n\nThe fact that it is the most popular does not mean it is the only (or even the best) way to package kubernetes applications. In `12-deploying-to-multiple-environments` I will cover additional methods, but Helm is common enough that it is worth covering here.\n\n## 3rd Party Example\n\n### Bitnami/Postgresql\n\nWe will use a popular open source helm chart for installing PostgreSQL to show the common types of actions you will take when using 3rd party helm charts.\n\nhttps://github.com/bitnami/charts/tree/main/bitnami/postgresql\n\n- `helm repo add`: Adds the Bitnami chart repository to Helm's local list of chart repositories.\n- `helm search repo`: Searches for available charts within the Bitnami repository.\n- `oras repo tags`: Searches for tags in an OCI-compliant registry.\n- `helm pull`: Downloads the PostgreSQL chart locally.\n- `helm show values`: Displays the default values used by the chart.\n- `helm install`: Installs the PostgreSQL chart into a Kubernetes cluster.\n- `helm upgrade`: Upgrades the deployed PostgreSQL release to a newer chart version.\n- `helm rollback`: Rolls back the PostgreSQL release to a previous version.\n- `helm list`: Lists Helm releases deployed in the Kubernetes cluster.\n- `helm get values`: Retrieves the values used for the deployed PostgreSQL release.\n- `helm get manifests`: Shows the Kubernetes manifests of the deployed PostgreSQL release.\n- `helm-uninstall`: Uninstalls the PostgreSQL release from the Kubernetes cluster.\n\n## 1st Party Examples\n\n### Helm Create\n\nThe helm cli provides a command that can be used to create a new chart:\n\n```\nhelm create \u003cCHART_NAME\u003e\n```\n\nThis provides a starting point with the necessary boilerplate for creating a chart, and also demonstrates many features of helm. If you were to use this to bootstrap a chart of your own, you would replace the files in the `templates` directory with your own.\n\nThe repo includes an unmodified version of this chart for observation.\n\n### Minimal Example\n\nA super minimal example helm chart that deploys a single `ConfigMap`. While the configuration is minimal, it uses the following features of helm templating, which cover a majority of the various use cases required for most helm charts:\n\n1. variables (`define`)\n2. conditionals (`if`)\n3. foreach (`range`)\n4. `.Release`\n5. `.Chart`\n6. `.Values`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrnn4268%2Fk8s_helm_demos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffrnn4268%2Fk8s_helm_demos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffrnn4268%2Fk8s_helm_demos/lists"}