Configure MinIO with the GitLab chart

MinIO is an object storage server that exposes S3-compatible APIs.

MinIO can be deployed to several different platforms. To launch a new MinIO instance, follow their Quickstart Guide. Be sure to secure access to the MinIO server with TLS.

To connect GitLab to an external MinIO instance, first create MinIO buckets for the GitLab application, using the bucket names in this example configuration file.

Using the MinIO client, create the necessary buckets before use:

mc mb gitlab-registry-storage
mc mb gitlab-lfs-storage
mc mb gitlab-artifacts-storage
mc mb gitlab-uploads-storage
mc mb gitlab-packages-storage
mc mb gitlab-backup-storage

Once the buckets have been created, GitLab can be configured to use the MinIO instance. See example configuration in rails.minio.yaml and registry.minio.yaml in the examples folder.