balloon Helm Chart
Prerequisites Details
- Kubernetes 1.9+
- PV support on the underlying infrastructure
Chart Details
This chart implements balloon with all necessary and optional features as sub charts. This charts includes the following sub charts:
- balloon server
- balloon server proxy
- balloon web ui
- balloon jobs
- browserless-chrome
The following sub charts get installed as dependencies from helm stable if enabled (which is the default):
- MongoDB replicaSet
- Elasticsearch
- ClamAV
- Collabora Code (Collab)
- Collabora Code (Document conversions)
balloon sub charts do not require persistent volumes however the balloon server is dependent on MongoDB and therefore a pv infrastructure is required which also applies to the optional elasticsearch integration.
Installing the Chart
To install the chart with the release name my-release
:
helm repo add balloon-stable https://gyselroth.github.io/balloon-helm/stable
helm install balloon-stable/balloon --name my-release --namespace mynamespace
Example deployment with ingress/tls enabled and 200GB MongoDB/Elasticsearch storage:
helm install balloon-stable/balloon --name my-release --namespace mynamespace <br/>
--set balloon-proxy.ingress.enabled=true <br/>
--set balloon-web.ingress.enabled=true <br/>
--set balloon-proxy.ingress.host=balloon.local <br/>
--set balloon-web.ingress.host=balloon.local <br/>
--set balloon-web.ingress.tls[0].secretName=tls-balloon.local <br/>
--set balloon-proxy.ingress.tls[0].secretName=tls-balloon.local <br/>
--set balloon.url=https://balloon.local <br/>
--set mongodb.persistentVolume.size=200Gi <br/>
--set elasticsearch.data.persistence.size=75Gi <br/>
--set elasticsearch.data.replicas=3
The balloon should now be installed and available. You may authenticate using the default admin user:
Username: admin
Password: admin
Configuration
The following table lists the configurable parameters of the balloon sub charts and their default values.
(Note: Only the configuration for the balloon server sub chart is documented so far)
Parameter | Description | Default |
---|---|---|
balloon.replicaCount |
Number of replicas in the replica set | 2 |
balloon.fullnameOverrride |
Override deployment name | "" |
balloon.nameOverride |
Override deployment name | "" |
balloon.url |
The URL of balloon under which the server is reachable from outside | https://balloon.local |
balloon.image.repository |
Image repository and name | gyselroth/balloon |
balloon.image.tag |
Image tag for the install container | 2.6.7 |
balloon.image.pullPolicy |
Image pull policy for the init container that establishes the replica set | IfNotPresent |
balloon.service.type |
Service Type | ClusterIP |
balloon.service.port |
Service Port (balloon < v3 is executed using PHP-FPM) | 9000 |
balloon.extraLabels |
Extra labels | {} |
balloon.extraVars |
Extra env variables | {} |
balloon.nodeSelector |
Custom node selector | "" |
balloon.tolerations |
Tolerations | [] |
balloon.resources |
Pod resource requests and limits | {} |
balloon.affinity |
Affinitiy | {} |
Installing pre releases
Besides the stable repository there is a repository which holds unstable balloon charts. Unstable charts also include all balloon pre-releases (Usually alpha and beta versions).
To install an unstable chart with the release name my-release
:
helm repo add balloon-unstable https://gyselroth.github.io/balloon-helm/unstable
helm install balloon-unstable/balloon --name my-release --namespace mynamespace
Release new charts
Upgrade the sub charts first which have changes.
Pack chart and update dependencies:
helm package -d stable stable/balloon
Update repository index:
helm repo index stable/