
Я попробовал обновить GitLab, запустив sudo apt-get update
и sudo apt-get install gitlab-ce
. Во время установки все было нормально, но после ее завершения nginx перестал работать, и я не могу его запустить.
После запуска: sudo gitlab-ctl status
я получаю это:
run: gitlab-workhorse: (pid 4378) 8613s; run: log: (pid 937) 9953s
run: logrotate: (pid 19116) 1412s; run: log: (pid 933) 9953s
down: nginx: 0s, normally up, want up; run: log: (pid 943) 9953s
run: postgresql: (pid 4456) 8581s; run: log: (pid 939) 9953s
run: redis: (pid 4466) 8581s; run: log: (pid 935) 9953s
run: sidekiq: (pid 4474) 8578s; run: log: (pid 940) 9953s
run: unicorn: (pid 4496) 8576s; run: log: (pid 931) 9953s
Я пробовал запускать sudo gitlab-ctl reconfigure
и перезагружать. Это не помогло. Я также пробовал sudo gitlab-ctl restart nginx
, что дало мне это:
timeout: down: nginx: 0s, normally up, want up
Есть идеи? Спасибо!
решение1
Попробуйте запустить sudo gitlab-ctl tail
, чтобы просмотреть все ошибки.
Я совершил глупую ошибку, не создав сертификаты для поддомена реестра GitLab при предыдущем редактировании моего экземпляра GitLab.
Просмотрев ошибки, я обнаружил, что nginx ожидает чтения файла и застрял здесь:
==> /var/log/gitlab/nginx/current <==
2019-03-05_09:17:42.23918 nginx: [emerg] BIO_new_file("/etc/gitlab/ssl/registry.gitlab.xxx.com.crt") не удалось (SSL: ошибка:02001002:системная библиотека:fopen:Нет такого файла или каталога:fopen('/etc/gitlab/ssl/registry.gitlab.xxx.com.crt','r') ошибка:2006D080:процедуры BIO:BIO_new_file:нет такого файла)
Все, что я могу сказать, это *facepalm*. Я исправил это после того, как выполнил letsencrypt для исправления конфигурации.