web-dev-qa-db-ja.com

GitLabを新たにインストールすると、ホームページにエラー500が表示されます(Plesk、Debian 9)

小さなパーソナルサーバーにGitLabをインストールし、PleskWebAdminサブドメインで動作するように構成しようとしました。私は通常、Omnibusパッケージを介してGitLabをインストールしました。 gitlab.rbファイルで次の設定を変更しました。

nginx['enable'] = false
web_server['external_users'] = ['www-data', 'PLESK_USER']
web_server['group'] = 'psacln'
gitlab_workhorse['listen_network'] = "tcp"
gitlab_workhorse['listen_addr'] = "127.0.0.1:8181"

ここで、PLESK_USERは、そのpleskサブドメインにリンクされているユーザーです。

サブドメインでHTTPをHTTPSにリダイレクトしました。これは機能し、SSL証明書も機能します。

Pleskの「HTTPSの追加ディレクティブ」の下で、このページのテキストを<VirtualHost *:443>タグに貼り付けました。 https://gitlab.com/gitlab-org/gitlab-recipes/blob/master/web-server/Apache/gitlab-omnibus-ssl-Apache24.conf

そして、YOUR_SERVER_FQDNと3つのSSLCertificateFile行(/var/www/vhosts/system/fqdn/conf/last_nginx.confの下にあるものに置き換えました)

ドメインにアクセスすると、すぐに500エラーが発生します。これは、rootユーザーを作成する前です。メッセージはGitLab固有であり、GitLabロゴと対応するテキストが含まれているため、GitLab自体へのルーティングは機能しているようです。

プロダクションログでは、サイトにアクセスするたびに次の出力しか得られません。

Started GET "/-/metrics" for 127.0.0.1 at 2019-05-27 11:59:44 +0000
Processing by MetricsController#index as HTML
Completed 200 OK in 2ms (Views: 0.4ms | ActiveRecord: 0.0ms | Elasticsearch: 0.0ms)

gitlab-ctltailを使用します

==> /var/log/gitlab/gitlab-Rails/production.log <==
Started GET "/-/metrics" for 127.0.0.1 at 2019-05-27 12:01:29 +0000
Processing by MetricsController#index as HTML
Completed 200 OK in 2ms (Views: 0.4ms | ActiveRecord: 0.0ms | Elasticsearch: 0.0ms)

==> /var/log/gitlab/gitlab-Rails/production_json.log <==
{"method":"GET","path":"/-/metrics","format":"html","controller":"MetricsController","action":"index","status":200,"duration":2.64,"view":0.41,"db":0.0,"time":"2019-05-27T12:01:29.670Z","params":[],"remote_ip":null,"user_id":null,"username":null,"ua":null,"queue_duration":null,"correlation_id":"98970bd1-9618-41ea-85a2-5f59b26fd16b"}

これらのメッセージは、ブラウザのリクエストごとに1回だけ表示されます。

Sudo gitlab-rake gitlab:check --traceは、不足している情報をさらに明らかにしません。具体的なエラーメッセージがないため、GitLabのインストール自体ではなく、PleskとGitLabの間のリンクに問題があると思いますが、この具体的な問題は他のどこにも見つからず、私は本当にアイデアがありません。何をチェックするか。

助けてくれてありがとう。

編集:/ var/log/gitlab/gitlab-workhorse/currentのログを確認し、アプリケーションの起動時(各再起動後)に次のエラーメッセージが表示されます

2019-05-27_13:11:49.39615 time="2019-05-27T13:11:49Z" level=error msg="unknown error" error="keywatcher: pubsub receive: EOF"
2019-05-27_13:11:49.39617 time="2019-05-27T13:11:49Z" level=info msg="redis: dialing" address=/var/opt/gitlab/redis/redis.socket network=unix
2019-05-27_13:11:49.39617 time="2019-05-27T13:11:49Z" level=error msg="unknown error" error="keywatcher: dial unix /var/opt/gitlab/redis/redis.socket: connect: no such file or directory"

ただし、最初に述べた設定を超えて設定を変更していないため、特定の構成への接続を実際に見つけることができません。

2
xerox102

私は今この問題を解決しました。

「ツールと設定」-「ApacheWebサーバー」の下のPleskインターフェースで、モジュール「proxy_http」が有効になっていませんでした。モジュールを有効にすると、上記の構成で問題が完全に解決されます。うまくいけば、これは同じ問題で将来誰かを助けることができます。

1
xerox102