.png)
小さな個人用サーバーに GitLab をインストールし、Plesk WebAdmin サブドメインで動作するように構成しようとしました。通常、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 エラーが発生します。これは、ルート ユーザーを作成する前です。メッセージは 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-ctl tailを使用する
==> /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"
しかし、最初に述べた設定以外は何も変更していないため、私の特定の構成との関連性は実際には見つかりません。
答え1
私は今この問題を解決しました。
私の Plesk インターフェースの「ツールと設定」-「Apache Web サーバー」では、モジュール「proxy_http」が有効になっていませんでした。モジュールを有効にすると、上記の構成で問題が完全に解決されます。将来、同じ問題に遭遇した人の役に立つことを願っています。