/helm-compose

Helm Compose is a helm plugin for managing multiple releases of one or many charts within a single configuration file.

Primary LanguageGoApache License 2.0Apache-2.0

helm-compose-banner

Build Status Go Report Card Reliability Rating Vulnerabilities GitHub release (latest SemVer)

Helm Compose is a tool for managing multiple releases of one or many different Helm charts. It is heavily inspired by Docker Compose and is an extension of the package manager idea behind Helm itself. It allows for full configuration-as-code capabilities in an single yaml file.

Installation

It is requirement to use helm v3.10.0+.

Install a specific version of helm compose (recommended). Click here for the latest version.

helm plugin install https://github.com/seacrew/helm-compose --version 1.3.0

Install the latest version.

helm plugin install https://github.com/seacrew/helm-compose

Quick Start Guide

Helm Compose makes it easy to define a list of Releases and all necessary Repositories for the charts you use in a single compose file.

Install your releases:

$ helm compose up -f helm-compose.yaml

Uninstall your releases

$ helm compose down -f helm-compose.yaml

A Helm Compose file looks something like this:

apiVersion: 1.1

storage:
  name: mycompose
  type: local # default
  path: .hcstate # default

releases:
  wordpress:
    chart: bitnami/wordpress
    chartVersion: 14.3.2
  wordpress2:
    chart: bitnami/wordpress
    chartVersion: 15.2.22
    namespace: homepage
    createNamespace: true
  postgres:
    chart: bitnami/postgresql
    chartVersion: 12.1.9
    namespace: database
    createNamespace: true

repositories:
  bitnami: https://charts.bitnami.com/bitnami

Check out the examples directory.

Documentation

Checkout the complete documentation.