Configure the storage used by your Gitpod installation
⚠️ Deprecated Content
The content of this page assumes you are using Helm, which is now deprecated. Please use the Installer instead.
Gitpod uses bucket storage to persist the contents of workspaces. Each workspace is tarballed into a single archive file which is then uploaded to a separate bucket.
By default Gitpod installs MinIO as built-in bucket storage which uses a persistent volume to store workspace content.
For more complex use case we recommend configuring more permanent means of persistence by either:
- Configure the contained MinIO-instance to serve as a gateway OR configure one of a wide range of storage backends.
- Bring your own storage bucket: Configure Gitpod to either connect to:
- your own installation of MinIO
- a Google Cloud Storage compatible storage solution
a) Configure custom MinIO instance
Create a file
values.custom.yaml
with this content:ymllanguage:
components: contentService: remoteStorage: kind: minio minio: endpoint: your-minio-installation.somewhere-else.com:8080 accessKey: enterKeyHere secretKey: superSecretKeyGoesHere tmpdir: /tmp # Disable built-in minio instance minio: enabled: false
Redeploy Gitpod using
helm upgrade --install -f values.custom.yaml gitpod gitpod.io/gitpod --version=0.10.0
to apply the changesNote that Helm does not merge hierarchies in a single file. Please make sure there is only ever one
components
hierarchy or the last one overwrites all previous values.
b) Configure the built-in MinIO instance
- Consult the chart’s documentation at https://helm.min.io/
- Create a file
values.custom.yaml
with this content:ymllanguage:
minio: accessKey: add-a-radom-access-key-here secretKey: add-a-radom-secret-key-here # insert custom config here
- Redeploy Gitpod using
helm upgrade --install -f values.custom.yaml gitpod gitpod.io/gitpod --version=0.10.0
to apply the changes