Migrate GitLab Container Registry storage to Amazon S3
The current plan is to migrate the Container Registry hosting away from our current local file storage system onto Amazon S3.
Pre-relocation questions to answer:
-
Bucket Name? -
AWS S3 Zone? -
Configure CloudFront?
Migration plan:
-
Configure S3 and IAM: https://github.com/docker/distribution/blob/master/docs/storage-drivers/s3.md#s3-permission-scopes -
Use CloudFront in front of S3 backend: https://github.com/docker/distribution/blob/master/docs/storage-drivers/s3.md#cloudfront-as-middleware-with-s3-backend -
Allow to configure different file storage for S3: gitlab-org/omnibus-gitlab!816 (merged) -
Improve GitLab to support external image storage: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4677 -
Synchronize content of /var/opt/gitlab/gitlab-rails/shared/registryfilesystem to external storage -
Declare Cut Over Date -
Do final synchronization to external storage -
Switch configuration: https://github.com/docker/distribution/blob/master/docs/storage-drivers/s3.md#cloudfront-as-middleware-with-s3-backend