最近、Discourse を AWS から DO へ移行しました https://meta.discourse.org/t/migrate-from-aws-to-digital-ocean-with-2-containers-spaces-and-2-cdns/155445/3。 ほぼすべてが正常に動作していますが、mail-receiver のみ問題が発生しています。
メールで返信し、./launcher logs mail-receiver でログを確認すると、以下のような表示がされます。
Operating environment:
RUBYGEMS_VERSION=2.7.7
MAIL_DOMAIN=reply.EXAMPLE.com
BUNDLER_VERSION=1.16.3
DISCOURSE_API_USERNAME=system
LANG=en_US.UTF-8
HOSTNAME=discourse-beta-ubuntu-s-4vcpu-8gb-nyc1-01-mail-receiver
RUBY_VERSION=2.3.7
GEM_HOME=/usr/local/bundle
PWD=/
HOME=/root
DISCOURSE_API_KEY=REMOVE
BUNDLE_PATH=/usr/local/bundle
BUNDLE_APP_CONFIG=/usr/local/bundle
TERM=xterm
BUNDLE_SILENCE_ROOT_WARNING=1
RUBY_MAJOR=2.3
SHLVL=1
RUBY_DOWNLOAD_SHA256=c61f8f2b9d3ffff5567e186421fa191f0d5e7c2b189b426bb84498825d548edb
PATH=/usr/local/bundle/bin:/usr/local/bundle/gems/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
DISCOURSE_MAIL_ENDPOINT=http://discuss.EXAMPLE.com.com/admin/email/handle_mail
DOCKER_HOST_IP=172.17.0.1
_=/usr/bin/env
Delivering mail sent to reply.EXAMPLE.com to Discourse
Starting Postfix
ログでは「sent」というステータスが出力されていますが、Discourse には返信が表示されません。何か原因が思い当たりますか?これは AWS から DO へ移行してから発生するようになりました。
<22>Sep 28 15:27:24 postfix/master[1]: daemon started -- version 3.2.4, configuration /etc/postfix
<22>Sep 28 15:28:32 postfix/smtpd[82]: connect from mail-vs1-f104.google.com[209.85.217.104]
<22>Sep 28 15:28:32 postfix/smtpd[82]: B56602F7524: client=mail-vs1-f104.google.com[209.85.217.104]
<22>Sep 28 15:28:32 postfix/cleanup[89]: B56602F7524: message-id=<b1642e591e436f0abeea7d2f34a48aa9@frontapp.com>
<22>Sep 28 15:28:32 postfix/qmgr[81]: B56602F7524: from=<drew@XXXX.com>, size=21558, nrcpt=1 (queue active)
<22>Sep 28 15:28:32 postfix/smtpd[82]: disconnect from mail-vs1-f104.google.com[209.85.217.104] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
<23>Sep 28 15:28:32 receive-mail[91]: Recipient: replies+9009a1d55776827244f5c75332c2efa7@reply.EXAMPLE.com
<22>Sep 28 15:28:32 postfix/pipe[90]: B56602F7524: to=<replies+9009a1d55776827244f5c75332c2efa7@reply.EXAMPLE.com>, relay=discourse, delay=0.3, delays=0.17/0/0/0.13, dsn=2.0.0, status=sent (delivered via discourse service)
<22>Sep 28 15:28:32 postfix/qmgr[81]: B56602F7524: removed
以下のコマンドを実行してログを確認しました。不明な理由により一時的なエラーが発生しているようです。
./launcher enter mail-receiver
mailq
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
348432F7524* 11603 Mon Sep 28 16:01:06 mapmeister@XXX.net
replies+429b18013a7bd110cab88a1a0f57f4cd@reply.XXX.com
95ED82F7526* 21757 Mon Sep 28 16:01:10 drew@XXX.com
replies+9009a1d55776827244f5c75332c2efa7@reply.XXX.com
42A2C2F6EE0 21607 Mon Sep 28 15:25:32 drew@XXX.com
(temporary failure)
replies+9009a1d55776827244f5c75332c2efa7@reply.XXX.com
324792F6EDF 23547 Mon Sep 28 15:23:22 drew@XXX.com
(temporary failure)
replies+b42b43ae2bde8b6b951d46647f387b32@reply.XXX.com
D07792F7525 21712 Mon Sep 28 15:53:04 drew@XXX.com
(temporary failure)
replies+9009a1d55776827244f5c75332c2efa7@reply.XXX.com
david
(David Taylor)
2020 年 9 月 28 日午後 4:09
3
最新の mail-receiver コンテナのバージョンを実行していますか?以下のトピックが参考になるかもしれません:
If you came here because you noticed this message on your Admin Dashboard:
We detected an outdated version of mail-receiver..
You are in the right place.
Please ssh into your discourse server and run the following two commands to update mail-receiver:
sed -i 's/mail-receiver:.*/mail-receiver:release/' /var/discourse/containers/mail-receiver.yml
/var/discourse/launcher rebuild mail-receiver
For more details please continue reading.
Why do we need to update mail-receiver?
We need to update…
確認すべきその他の項目:
mail_receiver の設定にある API キーが、Discourse の管理画面にある API キーと一致していますか?
/admin/email/rejected ログに拒否されたメールが表示されていませんか?
「いいね!」 2
こんにちは。ご返信ありがとうございます。
mail-receiver.yml には base_image: discourse/mail-receiver:release と記載しており、mail-receiver が古いというエラーメッセージは表示されません。mail-receiver は何度も再構築しています。
また、/admin/email/rejected に拒否されたメールの記録もありません。
ユーザー system に対してすべての権限を持つ新しい API キーを発行しました。それを mail-receiver.yml で使用しています。API が問題ではないかと考えましたが、数値が一致していることを何度か確認しました。
「いいね!」 1
気になったのですが、私が作成したAPIにアクティビティが見当たりません
david
(David Taylor)
2020 年 9 月 28 日午後 4:37
6
コンテナ間のネットワーク接続をテストするには、以下のようにコンテナにログインしてみてください。
./launcher enter mail-receiver
その後、以下を実行します。
wget -O - $DISCOURSE_MAIL_ENDPOINT
接続が正常に機能すれば、以下のような出力が表示されます。
wget: server returned error: HTTP/1.1 404 Not Found
表示されない場合は、設定ファイル内の DISCOURSE_MAIL_ENDPOINT の値を再確認してください。
「いいね!」 1
私の無知さは異常です。大規模な愚か者の帽子に値します。
Connecting to discuss.360velo.com.com (199.59.242.154:80).
com.com …??? DISCOURSE_MAIL_ENDPOINT が間違っていました。URL に .com.com が二つあり、http ではなく https を使うべきでした。正しい方向へ導いていただき、ありがとうございます。
「いいね!」 2
system
(system)
クローズされました:
2020 年 10 月 28 日午後 5:02
8
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.