こんにちは!
この素晴らしいチュートリアル に従って、Web サイトで HTTPS を有効にしようとしていました。アプリを再構築する ./launcher rebuild app を実行するまで、すべて順調に進みました。
原因を特定するために discourse-doctor を実行したところ、ついに何か見つかりました:
==================== END REBUILD LOG ====================
アプリの再構築に失敗しました。
ドメイン名を確認中 . . .
discourse.mydomain.com への接続に成功しました。
非標準のプラグインを削除して再構築することをお勧めします。
既存のコンテナの再起動を試行中 . . .
既存のコンテナを起動中
+ /usr/bin/docker start app
デーモンからのエラー応答:エンドポイント app (some_random_characters) での外部接続のプログラミングにドライバーが失敗しました:ユーザーランドプロキシの起動エラー:listen tcp 0.0.0.0:443: bind: アドレスは既に使用中
エラー:コンテナ app の起動に失敗しました
コンテナの再起動に失敗しました。
注:長い文字列を some_random_characters に、ドメイン名を discourse.mydomain.com に置き換えています。
これはかなり奇妙です。チュートリアルに忠実に従ったはずなので、どう対処すればよいかわかりません。
ご助力いただければ幸いです!
良い一日を、
nekodroid
さらなる診断のためには、app.yml を共有する必要があります。投稿する前に、機密性の高いメールアドレスやパスワードを削除してください。
---
env:
DISCOURSE_DEVELOPER_EMAILS: myemailadress@maildomain.com
DISCOURSE_HOSTNAME: discourse.mydomain.com
DISCOURSE_SMTP_ADDRESS: stmp.eu.mailgun.org
DISCOURSE_SMTP_PASSWORD: smtppasswordwithoutquotes
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: postmaster@discourse.mydomain.com
LANG: en_US.UTF-8
LETSENCRYPT_ACCOUNT_EMAIL: myemailadress@maildomain.com
UNICORN_WORKERS: 2
expose:
- "80:80"
- "443:443"
hooks:
after_code:
-
exec:
cd: $home/plugins
cmd:
- "git clone https://github.com/discourse/docker_manager.git"
params:
db_default_text_search_config: pg_catalog.english
db_shared_buffers: 128MB
run:
-
exec: "echo \"カスタムコマンドの開始\""
-
exec: "echo \"カスタムコマンドの終了\""
templates:
- templates/postgres.template.yml
- templates/redis.template.yml
- templates/web.template.yml
- templates/web.ratelimited.template.yml
- templates/web.template.yml
- templates/web.ssl.template.yml
- templates/web.letsencrypt.ssl.template.yml
volumes:
-
volume:
guest: /shared
host: /var/discourse/shared/standalone
-
volume:
guest: /var/log
host: /var/discourse/shared/standalone/log/var-log
こちらです〜
pfaffman
(Jay Pfaffman)
2019 年 8 月 28 日午後 3:34
4
この部分は読みましたか?
どうやら Docker インストールに問題があるようです。
それに、なぜ app.yml の項目の順序を完全に書き換えてしまったのですか?
実はこのガイドを読んでいたのですが、コマンド wget -qO- https://get.docker.com/ | sh でつまずきました。記憶では「wget コマンドの使用方法が誤っています」と表示されたと思います。そのため次の手順に進み、./discourse-setup コマンドを入力すると Docker が自動的にインストールされたのを覚えています。
これがおそらく私の問題なのでしょう…
それでは、Discourse のインストールを最初からやり直して、このスレッドを更新します。
みなさん、ご親切にありがとうございました!
pfaffman
(Jay Pfaffman)
2019 年 8 月 28 日午後 6:42
6
はい!ある時点で追加されました。いつ追加されたかはっきりしません。
無事に立ち上がってよかったですね。
ありがとう :uwu:
ところで、またエラーが発生しました!
discourse-setup の自動セットアッププログラムを実行し、プロンプトが表示された際に Let’s Encrypt の暗号化用のメールアドレスを追加しました。すると、以下のようなメッセージが表示されました:
Checking your domain name . . .
WARNING:: This server does not appear to be accessible at discourse.apertureproject.me:443.
A connection to http://discourse.apertureproject.me (port 80) also fails.
これによると、エラーはポートが開いていないことが原因のようですが、その解決方法が全くわかりません。また、暗号化なしでサイトを公開したくないので、Let’s Encrypt を無効化することはありません。
編集!
ホスティング業者(OVH)のドキュメントでポートを開く方法を見つけました。しかし、IP マネージャーが空になっており、ドキュメントのスクリーンショットによると、複数の IP アドレスが登録されているはずです。
すみません、フランス語ですが、ご覧の通り IP アドレスのリストは完全に空です。
pfaffman
(Jay Pfaffman)
2019 年 8 月 28 日午後 7:34
8
実際に問題がない場合でもテストが失敗することがあります。そのため、どのような挙動になるか確認できます。
DNS は設定されていますか?いいえ。discourse.apertureproject.me が解決されません。HTTPS を利用するには、事前に DNS を設定する必要があります。
使用している OS とプラットフォームは何ですか?(一部ではデフォルトでポートが無効化されています)
コマンドラインで nc を実行すると「コマンドが見つかりません」と表示されますか?
さて、どうすればいいのでしょうか?
DNS レコードに関することは知っているのですが、値の種類などは何でしょうか?
ここでいう「値」とは、A、AAAA、NS などを指します。
すでに DNS サーバーのカテゴリに以下を追加しました:
ご協力いただき、本当にありがとうございます~
pfaffman
(Jay Pfaffman)
2019 年 8 月 28 日午後 8:28
10
ドロップレットの IP アドレスを指す A レコードが必要です。
それは済ませました。
別の質問ですが、以前はなかった問題が発生しています。apertureproject.me と入力すると、現在 nginx のウェルカムページが表示されてしまいます。
以前は Discourse の正常なインストールメッセージが表示されていました。
インストールページが開きます。これは正常です。お急ぎください。
それでは、どうやってインストールすればいいのでしょうか?わかりません。以前はこのページを見たことがありません。
すみません、私はまだ初心者なので…混乱しています
30 分インストールガイドのことですか?それについては従いました。
いいえ、もう完了しています。現在は管理者登録のステップです。
ああ…まだよくわからないです x’( どうすればいいでしょうか?
nginx へようこそ!
このページが表示されている場合、nginx ウェブサーバーが正常にインストールされ、動作しています。さらに設定が必要です。
オンラインドキュメントやサポートについては、nginx.org をご覧ください。
商用サポートは nginx.com でご利用いただけます。
nginx をご利用いただき、ありがとうございます。
いいえ、登録ページが表示されています。キャッシュとブラウザの履歴をクリアして、もう一度お試しください。