Mail-receiver et/ou Discourse ne publient pas de réponses par e-mail

J’ai récemment migré Discourse d’AWS vers DO Migrate from AWS to Digital Ocean with 2 containers, spaces and 2 CDNs - #3 by dfriestedt. Tout fonctionne parfaitement, sauf mon récepteur de courriels.

Lorsque je réponds par courriel et que j’examine les journaux avec ./launcher logs mail-receiver, j’obtiens ce qui suit.

Environnement d'exécution :
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
Livraison du courriel envoyé à reply.EXAMPLE.com vers Discourse
Démarrage de Postfix

Il semble que je reçoive un statut « sent » dans les journaux, mais la réponse n’apparaît pas dans Discourse. Avez-vous des idées à ce sujet ? Cela n’a commencé à se produire qu’après ma migration d’AWS vers 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

J’ai examiné les journaux en exécutant les commandes suivantes. Il semble que je rencontre des échecs temporaires pour une raison inconnue.

./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
                                                           (échec temporaire)
                                         replies+9009a1d55776827244f5c75332c2efa7@reply.XXX.com

324792F6EDF    23547 Mon Sep 28 15:23:22  drew@XXX.com
                                                           (échec temporaire)
                                         replies+b42b43ae2bde8b6b951d46647f387b32@reply.XXX.com

D07792F7525    21712 Mon Sep 28 15:53:04  drew@XXX.com
                                                           (échec temporaire)
                                         replies+9009a1d55776827244f5c75332c2efa7@reply.XXX.com

Utilisez-vous la dernière version du conteneur mail-receiver ? Vous pourriez être intéressé par ce sujet :

Voici d’autres éléments à vérifier :

  • La clé API dans votre configuration mail_receiver correspond-elle à une clé API dans l’interface d’administration de Discourse ?
  • Voyez-vous des e-mails apparaître dans les journaux /admin/email/rejected ?

Bonjour. Merci pour votre réponse.

Dans mail-receiver.yml, j’ai base_image: discourse/mail-receiver:release et je ne vois aucun message d’erreur indiquant que le mail-receiver est obsolète. J’ai reconstruit le mail-receiver à de nombreuses reprises.

Je ne vois aucun e-mail rejeté ici : /admin/email/rejected
J’ai généré une nouvelle clé API pour l’utilisateur system avec tous les privilèges. Je l’utilise dans mail-receiver.yml. Je pensais que le problème venait de l’API, mais j’ai vérifié plusieurs fois que les numéros correspondent.

Curieux, je ne vois aucune activité sur l’API que j’ai créée

Pour tester la connexion réseau entre les conteneurs, vous pouvez essayer d’entrer dans le conteneur comme suit :

./launcher enter mail-receiver

Puis essayez :

wget -O - $DISCOURSE_MAIL_ENDPOINT

Si la connexion fonctionne correctement, vous devriez voir :

wget: server returned error: HTTP/1.1 404 Not Found

Sinon, vérifiez à nouveau la valeur de DISCOURSE_MAIL_ENDPOINT dans votre configuration.

Mon niveau d’ignorance est fou. Je mérite un énorme bonnet d’âne.

Connexion à discuss.360velo.com.com (199.59.242.154:80).

com.com… ??? J’avais le mauvais DISCOURSE_MAIL_ENDPOINT. J’avais deux .com.com dans l’URL et j’aurais dû utiliser https plutôt que http. Merci beaucoup de m’avoir orienté dans la bonne direction.