手順を説明したチュートリアルはこちらから直接ご覧いただけます…
(Hetznerの)専用サーバーに、まっさらなDiscourseインスタンスをインストールしました(現時点ではサーバーにはそれしかありません)。
このサーバーで、クライアントのためにGhostブログやWordPressサイトもホストできるように、リバースプロキシとしてCloudPanelを使用したいと考えています。
このチュートリアルを読み、また、以下の他の投稿も参考にしましたが、可能であるように思えます。
しかし、リバースプロキシに関する学習曲線につまずいています。
CloudPanelを使ってサイトを簡単にインストール・管理することはできます。
しかし、CloudPanelとDiscourseを連携させるための正しい順序や手順が明確ではありません。
この投稿で手順を文書化したいと思います。
どなたか、手順を教えていただけますか?
pfaffman
(Jay Pfaffman)
2
まず、これらのガイドのいずれかに従い、Discourse を別のポートに移動し、SSL および Let’s Encrypt テンプレートを削除して再構築します。次に、リバース プロキシにそのポートを使用するように指示します。
「いいね!」 3
CloudPanel を最初にインストールし、インターフェイスでリバースプロキシを作成した場合…
…または Vhost Editor で…
…その後 Discourse をインストールできますか?
それとも、Discourse を 最初に インストールする必要がありますか、または何らかの点で推奨されますか?
最もシンプルで直感的な方法(私のような他の単純な人々のために
)の手順を提供したいと思います。
Jagster
(Jakke Lehtonen)
4
どちらでも構いません。
- Discourse がポート 80/443 を使用しない場合。競合が発生するとリバースプロキシがクラッシュします。
- Discourse が SSL を使用しない場合。ただし、ポート 80 をリバースプロキシがバックエンドに使用するポートに公開します。
したがって、「どちらでも構いません」とは、リバースプロキシを開始する前に Discourse をバックエンドとしてセットアップする必要があり、その時点では到達不能になる可能性があることを意味します。
「いいね!」 1
pfaffman
(Jay Pfaffman)
5
これは単純な人向けのセットアップではありません。リバースプロキシがどのように機能するか、そしてDiscourseを手動でどのように設定するか、両方を理解する必要があります。シンプルでも直感的でもありません。
初心者向けの標準インストールをサポートするだけでも十分に困難です。システム管理について何も知らない人々のために、それらの指示が機能するようにするために、非常に多くの時間が費やされてきました。
「いいね!」 2
「システム管理について何も知らない人でも、これらの手順が機能するように、非常に多くの時間を費やしてきました。」
@pfaffman 今後、その時間を短縮するお手伝いができれば幸いです!
「いいね!」 1
containers/app.yml はインストーラーによって作成されるファイルですか? (リポジトリ https://github.com/discourse/discourse_docker に見つかりません。)
standalone.yml ファイルを編集して app.yml に名前を変更しました。
そのファイルを containers/ に配置してから ./discourse-setup を実行すれば機能するはずですか?
(app.yml の設定を正しく構成したと仮定します)
Stephen
(Stephen)
8
そうです。
Discourse に比較的最近参加した者として、これを正しく行う方法は次のようになります。
- リバースプロキシを一時的に無効にします。
- SSL/Lets Encrypt を無効にして Discourse をインストールします。
- :80 で正常に動作するインストールを確認します。
- Discourse のポートを 81 または別の非標準ポートに変更するか、さらに良いのはソケットを使用します。
- リバースプロキシを再度起動し、Discourse のインストールに対して設定します (https カプセル化を含む)。
- force_https を有効にします。
上記のリバースプロキシなしで Discourse をインストールしない場合、トラブルシューティングが実質的に困難になるほど、問題が発生する可能性のある領域が多すぎます。
「いいね!」 1
pfaffman
(Jay Pfaffman)
9
セットアップには discourse-setup を使用できません。編集した場合は、以下を実行してください。
./launcher rebuild app
「いいね!」 2
奇跡中の奇跡――やりました! 皆さんのご協力に感謝します! 手順については、上記のトピック投稿に記載します。
「いいね!」 2
OK、ちょっと(小さいと思いますが)行き詰まっています…
2つ目のDiscourseインスタンスを作成するには、app2.yml を作成・編集し、2つ目のDiscourse用の server_name.conf を作成・編集して、DISCOURSE_HOSTNAME と server_name を変更します。
しかし、その後… app2 をどのようにビルドすればよいのでしょうか?試したのは以下の通りです。
service nginx restart
./launcher stop app
./launcher rebuild app2
そして
./discourse-setup (最初のインスタンスをインストールしたときに ./discourse setup を使用し、その後 app.yml を編集して、最初のインスタンスではうまくいきました。)
この手順で2つ目のURLにDiscourseは表示されましたが、最初のインスタンスからデータを取得しているようです。
何か理解できていないことがあります。2つ目のドメインに2つ目のサイトをビルドする適切な方法は何でしょうか?
「いいね!」 2
Stephen
(Stephen)
12
リバースプロキシは、2番目のドメインをリッスンし、トラフィックを別のポートにルーティングするように設定されていますか?
「いいね!」 2
pfaffman
(Jay Pfaffman)
13
/var/discourse/standalone となっているディレクトリを別のもの(standalone2?)に変更する必要があります。
Postgresを1つだけ実行するために、2コンテナセットアップを使用することをお勧めします(Dockerを使用したマルチサイト構成にヒントがあると思います)。ただし、RAMがたくさんある場合は気にする必要はないかもしれません。
「いいね!」 1
すごい。自分一人では決して気づかなかったでしょう。今日一日、あなたは私のヒーローです。
私がここでやっていることは、(クライアントのために)クリエイター向けの多用途Discourseパブリッシングシステムのプロトタイプを、GhostとDiscourseを統合して構築することです。
私はフロントエンド開発者で、今からシステム管理を完全に習得する必要があります。
そのため、マルチサイトと分離コンテナの両方を構築する必要があります。
これが私のサーバーセットアップです。
-
Hetznerの専用サーバー(CPU 6コア、RAM 64GB、NVMe 2x512GB)
-
ContaboのVPS(CPU 8コア、RAM 30GB、NVMe 200GB)
「いいね!」 1
Canapin
(Coin-coin le Canapin)
16
それについては何も知りませんが、あなたや他の人があなたのチュートリアルが信頼できると思っているなら、新しい #documentation:sysadmin #how-to #advanced-setup や、その他適切だと思うタグを自由に作成してください 
(1か月後に自動的に削除される前に
)
「いいね!」 3
はい、承知いたしました。CloudPanel で新しいサイトを作成した後、2 番目のインスタンスでは以下の手順で機能しました。
app2.yml を手動で作成および編集し、そのファイル内の standalone をすべて standalone2 に変更する
- Vhost ファイル内の
standalone も standalone2 に変更する
./launcher rebuild app2 を実行する
Cloudflare のキャッシュをすべてクリアし、nginx を再起動し、サーバーも再起動したと思います。
重ねて、ご協力いただきありがとうございました。
「いいね!」 2
system
(system)
クローズされました:
18
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.