Install Gitpod Self-Hosted on Kubernetes
⚠️ Deprecated Content
The content of this page assumes you are using Helm, which is now deprecated. Please use the Installer instead.
This section describes how to install Gitpod on any Kubernetes cluster using Helm. This is the most flexible and generic way of installing Gitpod. The chart for stable releases resides in Helm repository charts.gitpod.io, charts for branch-builds can be found here, and the source of the charts is in our public git repository.
For some platforms we offer Terraform scripts that ease the infrastructure setup. Once the script has created the necessary infrastructure it will output a values.terraform.yaml
that contains infrastructure-specific configuration for the helm
deployment.
Prerequisites
See Installation requirements for Gitpod Self-Hosted.
Installation
To install Gitpod in your Kubernetes cluster, follow these steps:
Create a file
values.custom.yaml
with the following content (please replace the keys/secrets, for instance withopenssl rand -hex 20
):ymllanguage:
docker-registry: authentication: username: gitpod password: your-registry-password rabbitmq: auth: username: your-rabbitmq-user password: your-secret-rabbitmq-password minio: accessKey: your-random-access-key secretKey: your-random-secret-key
You should replace the keys with 2 different random strings unique for your installation.
Run the following commands in your local terminal:
bashlanguage:
helm repo add gitpod.io https://charts.gitpod.io helm repo update helm install -f values.custom.yaml gitpod gitpod.io/gitpod --version=0.10.0
Configure domain and https.
Run
kubectl get pods
and verify that all pods are in stateRUNNING
. If some are not, please see the Troubleshooting Guide.Go to
https://<your-domain.com>
and follow the steps to complete the installation.
Upgrade
Check the Upgrade Guide and follow the steps outlined there.
Run the update
bashlanguage:
helm install -f values.custom.yaml gitpod gitpod.io/gitpod --version=0.10.0
Run
kubectl get pods
and verify that all pods are in stateRUNNING
. If some are not, please see the Troubleshooting Guide.
Recommended Configuration
By default, the Helm chart installs a working Gitpod installation in a lot of scenarios. Yet, there are certain things you might want to review when installing Gitpod for long term use and/or a bigger audience:
- Database: Configure where Gitpod stores all internal runtime data.
- Storage: Configure where Gitpod persists workspace content.
- Docker Registry: Configure where Gitpod stores workspace images.
Customization
Further customizations:
- Kubernetes Nodes: Configure file system layout and the workspace’s node associativity.
- Workspaces: Configure workspace sizing.