Discourseのインストール 502 Bad Gateway

皆さん、こんにちは。

先日までDiscourseは正常に動作していましたが、アップデート後に現在のような問題(502 Bad Gateway)が発生しています。

NGINXを使用しており、Discourse自体やサービスへのメインのNGINXサーバープロキシについては何も変更していません。

また、Cloudflare DNSなども使用しています。

行った手順は以下の通りです。

  1. ウェブサイトの管理パネル(コミット用)からDiscourseをアップデートしました。
  2. サーバーにcertbotが既にインストールされていることに気づく前に、サーバーにcertbotをインストールしました。
  3. 「sudo snap install core; sudo snap refresh core」を実行しました。
  4. npmとnodejsを最新バージョンにアップデートしました。
  5. ステップ1から4の後、Discourseアプリがダウンしていることに気づき、再構築しました。

リバースプロキシのnginx設定を再確認しましたが、何も触っていないことを再確認しました。

何が原因で問題が発生したのか少し混乱しています。

よろしくお願いします。
~Blood

「いいね!」 1

アップグレード/再起動後、1~2分間502エラーが発生します。

サーバー上のnpmやnodejsは、Discourseがすべてコンテナ内で取得するため、何ら影響を与えません。

それでも復旧しない場合は、コマンドラインでのアップグレードを試してください。

cd /var/discourse
./launcher rebuild app

ああ。

以下を確認できます。

docker logs -f app

および

/var/discourse/shared/logs/.....
「いいね!」 1

docker logs -f app を使用してログを確認しました。
その中に、特に目立つものは何もありませんでした。

また、/var/discourse/shared/logs/ がなく、代わりに以下があるようです。

/var/discourse/shared/standalone/log

ただし、ログがそのディレクトリ内にある場合、どれを読むべきか正確にはわかりません。

ああ、すみません。提供された正しいパスからたどっていくと、RailsログとNginxログがあります。Railsログを確認して、リバースプロキシからコンテナにデータが到達しているか、またRailsにエラーがないかを確認できます。

ログから読み取れる限りでは、redisは最初は接続しませんが、その後自己修復するようです。ただし、以前からそれが存在したかどうかは定かではないため、正直なところ、それが私が抱えている問題の原因だとは思っていません。

SSLハンドシェイクが原因かと思いましたが、NGINXのerror.logには最近何も言及されていません。

外部のリバースプロキシを使用している場合、SSL関連の処理はDiscourseではなくそちらで行うべきです。ymlファイルにSSLとletsencryptのテンプレートが含まれている場合、それが問題である可能性がありますが、以前は動作していたとのことでしたね。

ええ、コメントアウトされていることを再確認しましたが、コメントアウトされています。そのため、アップデート後にこれが起こった理由が全くわかりません。

数日前までは動作していたはずですが、アップデートなどで少し触った後です。しかし、私が把握している限りでは、問題が発生しているのはこのサービスだけではないため、NGINX側の問題だと考えています。

「いいね!」 1