Gitlab показывает: «Произошла ошибка при получении содержимого папки».

Я случайно напутал владельцев файлов (chown на неправильном уровне ...) на моем собственном Gitlab, запущенном в контейнере Docker. Мне удалось восстановить большую часть собственности.

Это было сделано путем бега. Однако это не сразу устранило проблему, поскольку журналы по-прежнему показывали ошибку отказа в разрешении для grafana db. Чтобы исправить это, я продолжил настройку нового Gitlab и сравнил / восстановил право собственности.

Хотя сам Gitlab теперь снова работает, я все еще получаю следующие ошибки:

  1. Когда я пытаюсь толкнуть, я получаю:
      remote: GitLab: Push operation timed out
remote:
remote: Timing information for debugging purposes:
remote: Running checks for ref: XXXX
remote: Checking if you are allowed to push... (62.94ms)
remote: Checking if default branch is being deleted... (0.31ms)
remote: Scanning repository for blobs stored in LFS and verifying their files have been uploaded to GitLab... (cancelled after 29547.57ms)
To http://gitlab.XXXX.XX/XXXX/XXXX.git
 ! [remote rejected]   XXXXX -> XXXX (pre-receive hook declined)
error: failed to push some refs to 'http://gitlab.XXXX.XX/XXXX/XXXX.git'
  1. Когда я нажимаю на проект в веб-интерфейсе, он показывает такую ​​информацию, как ветки, общий размер файла и т. Д., Но не сам список файлов / файлов. Скорее отображается.

Бег при попытке нажать показывает следующее:

      {"level":"info","msg":"I, [2021-07-05T17:13:19.676164 #3372254]  INFO -- sentry: ** [Raven] Raven 3.0.4 configured not to capture errors: DSN not set","supervisor.args":["bundle","exec","bin/ruby-cd","/var/opt/gitlab/gitaly","/opt/gitlab/embedded/service/gitaly-ruby/bin/gitaly-ruby","3368488","/var/opt/gitlab/gitaly/internal_sockets/ruby.0"],"supervisor.name":"gitaly-ruby.0","time":"2021-07-05T17:13:19.692Z"}
{"error":"exit status 1","level":"warning","msg":"exited","supervisor.args":["bundle","exec","bin/ruby-cd","/var/opt/gitlab/gitaly","/opt/gitlab/embedded/service/gitaly-ruby/bin/gitaly-ruby","3368488","/var/opt/gitlab/gitaly/internal_sockets/ruby.0"],"supervisor.name":"gitaly-ruby.0","time":"2021-07-05T17:13:19.698Z"}
{"level":"info","msg":"I, [2021-07-05T17:13:20.817759 #3372257]  INFO -- sentry: ** [Raven] Raven 3.0.4 configured not to capture errors: DSN not set","supervisor.args":["bundle","exec","bin/ruby-cd","/var/opt/gitlab/gitaly","/opt/gitlab/embedded/service/gitaly-ruby/bin/gitaly-ruby","3368488","/var/opt/gitlab/gitaly/internal_sockets/ruby.1"],"supervisor.name":"gitaly-ruby.1","time":"2021-07-05T17:13:20.835Z"}
{"error":"exit status 1","level":"warning","msg":"exited","supervisor.args":["bundle","exec","bin/ruby-cd","/var/opt/gitlab/gitaly","/opt/gitlab/embedded/service/gitaly-ruby/bin/gitaly-ruby","3368488","/var/opt/gitlab/gitaly/internal_sockets/ruby.1"],"supervisor.name":"gitaly-ruby.1","time":"2021-07-05T17:13:20.843Z"}
[...]
{"correlation_id":"01F9VTFEM5X7N2PZR6WVDAQQYN","error":"GitLab: Push operation timed out\n\nTiming information for debugging purposes:\nRunning checks for ref: XXXX\nChecking if you are allowed to push... (13.42ms)\nChecking if default branch is being deleted... (0.43ms)\nScanning repository for blobs stored in LFS and verifying their files have been uploaded to GitLab... (cancelled after 29583.1ms)","grpc.meta.deadline_type":"none","grpc.method":"PreReceiveHook","grpc.request.fullMethod":"/gitaly.HookService/PreReceiveHook","grpc.request.glProjectPath":"XXXX/XXXX","grpc.request.glRepository":"project-5","grpc.request.repoPath":"@hashed/ef/2d/ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d.git","grpc.request.repoStorage":"default","grpc.request.topLevelGroup":"@hashed","grpc.service":"gitaly.HookService","grpc.start_time":"2021-07-05T17:11:59.178Z","level":"warning","msg":"stopping transaction because pre-receive hook failed","peer.address":"@","pid":3368488,"span.kind":"server","system":"grpc","time":"2021-07-05T17:12:29.025Z"}

Кто-нибудь знает, как исправить эту проблему?

РЕДАКТИРОВАТЬ: я добавил информацию о как обсуждалось в комментариях.

1 ответ

Я, наконец, решил эту проблему, установив новый контейнер Gitlab Docker и выполнив инструкции из документации по резервному копированию и восстановлению Gitlab (https://docs.gitlab.com/ee/raketasks/backup_restore.html).

Обратите внимание, что важно также сделать резервную копию секретов из следующих файлов:

      /etc/gitlab/gitlab-secrets.json
/etc/gitlab/gitlab.rb

Процесс действительно простой и плавный, и в зависимости от размера файла вашего репозитория резервное копирование и восстановление занимает всего пару минут.

Другие вопросы по тегам