summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDJ Mountney <david@twkie.net>2019-06-18 15:17:11 -0700
committerDJ Mountney <david@twkie.net>2019-06-18 15:17:11 -0700
commita047c3a123663a4bdacaf4c871f242a409e3f005 (patch)
tree71c70977efc88cf5cf9b616714f5249fb7a28fd6
parent6fa900547dbd30b0db0070f87dbeb4b05d485b9b (diff)
downloadgitlab-ce-doc-registry-restore-workaround.tar.gz
Document the workaround for issues after registry restoredoc-registry-restore-workaround
Restoring the registry ends up using the wrong file permissions, breaking the registry. Document the workaround while we look at improvements.
-rw-r--r--doc/raketasks/backup_restore.md32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/raketasks/backup_restore.md b/doc/raketasks/backup_restore.md
index 764916ca82d..56782e80262 100644
--- a/doc/raketasks/backup_restore.md
+++ b/doc/raketasks/backup_restore.md
@@ -936,5 +936,37 @@ A similar strategy can be employed for the remaining features - by removing the
data that cannot be decrypted, GitLab can be brought back into working order,
and the lost data can be manually replaced.
+### Container Registry push failures after restoring from a backup
+
+If you use the [Container Registry](../user/project/container_registry.md), you
+may see pushes to the registry fail after restoring your backup on an Omnibus
+GitLab instance after restoring the registry data.
+
+These failures will mention permission issues in the registry logs, like:
+
+```
+level=error
+msg="response completed with error"
+err.code=unknown
+err.detail="filesystem: mkdir /var/opt/gitlab/gitlab-rails/shared/registry/docker/registry/v2/repositories/...: permission denied"
+err.message="unknown error"
+```
+
+This is caused by the restore being run as the unprivileged user `git` which was
+unable to assign the correct ownership to the registry files during the restore
+([issue 62759](https://gitlab.com/gitlab-org/gitlab-ce/issues/62759)).
+
+**To get your registry working again:**
+
+Run the following:
+
+```bash
+sudo chown -R registry:registry /var/opt/gitlab/gitlab-rails/shared/registry/docker
+```
+
+If you have changed the default filesystem location for the registry, you will
+want to run the chown against your custom location instead of
+`/var/opt/gitlab/gitlab-rails/shared/registry/docker`
+
[reconfigure GitLab]: ../administration/restart_gitlab.md#omnibus-gitlab-reconfigure
[restart GitLab]: ../administration/restart_gitlab.md#installations-from-source