Salut tout le monde,
Je veux migrer un forum phpBB3 de longue date vers Discourse. J’ai réussi à configurer Docker et j’ai accès à la configuration initiale. Malheureusement, aucun e-mail n’est envoyé, je ne peux donc pas terminer la configuration.
J’ai effectué quelques débogages et je n’ai pas trouvé la raison, alors je me tourne vers vous pour obtenir de l’aide.
Ma configuration est la suivante : j’ai configuré Apache2 comme proxy inverse pour Docker, ce qui fonctionne. Mon serveur de messagerie est un conteneur Mailcow sur la même machine. Le serveur de messagerie a été testé de manière approfondie et fonctionne bien quotidiennement via SMTP avec STARTTLS sur le port 587 et le webmail.
La configuration dans mon fichier app.yml ressemble à ceci :
DISCOURSE_SMTP_ADDRESS: mail.example.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: discourse@example.com
DISCOURSE_SMTP_PASSWORD: "password"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (optionnel, par défaut true)
#DISCOURSE_SMTP_DOMAIN: mail.example.com
DISCOURSE_NOTIFICATION_EMAIL: discourse@example.com
Lorsque j’exécute ./discourse-doctor, j’obtiens :
==================== TEST DE MAIL ====================
Pour un test robuste, obtenez une adresse sur http://www.mail-tester.com/
Ou envoyez simplement un message test à vous-même.
Adresse e-mail pour le test de mail ? ('n' pour ignorer) [admin@example.com]:
Envoi du mail à admin@example.com. . .
Test d'envoi à admin@example.com en utilisant mail.example.com:587, nom d'utilisateur : discourse@example.com avec authentification simple.
=======================================
ERREUR
=======================================
ERREUR IMPRÉVUE
Impossible d'assigner l'adresse demandée - connect(2) pour [ipv6 correcte]:587
=======================================
SOLUTION
=======================================
Ce n'est pas une erreur courante. Aucune solution recommandée n'existe !
Veuillez signaler le message d'erreur exact ci-dessus sur https://meta.discourse.org/
(Et une solution, si vous en trouvez une !)
Ne parvenant pas à trouver des personnes ayant des messages d’erreur similaires sur le web, je me suis tourné vers ce fil de discussion.
J’ai pu me connecter facilement au serveur de messagerie avec telnet depuis l’extérieur du conteneur.
Ce que j’ai essayé à l’intérieur du conteneur :
getent hosts mail.example.com
a fourni la bonne adresse IPv6
Mais ensuite, les erreurs ont commencé à apparaître :
openssl s_client -connect mail.example.com:587 -starttls smtp
140124593714496:error:0200206E:system library:connect:Connection timed out:../crypto/bio/b_sock2.c:110:
140124593714496:error:2008A067:BIO routines:BIO_connect:connect error:../crypto/bio/b_sock2.c:111:
connect:errno=110
openssl s_client -6 -connect "[ipv6 correcte]:587" -starttls smtp
139918557709632:error:02002063:system library:connect:Cannot assign requested address:../crypto/bio/b_sock2.c:110:
139918557709632:error:2008A067:BIO routines:BIO_connect:connect error:../crypto/bio/b_sock2.c:111:
connect:errno=99
openssl s_client -connect smtp.gmail.com:587 -starttls smtp
fonctionne très bien
Lorsque j’essaie la commande
openssl s_client -connect mail.example.com:587 -starttls smtp
depuis l’extérieur du conteneur, cela fonctionne également bien.
Mes journaux mailcow/postfix ne montrent rien…
Je suis perdu. Pouvez-vous m’aider à savoir où chercher ensuite ?