Hallo Discourse-Leute!
Ich habe tagelang damit gekämpft, die E-Mail-Parameter mit Port 465 einzurichten, und die Lösung ist weder hier noch in irgendeinem Beitrag, den ich im Forum gelesen habe (und ich habe wirklich recherchiert).
Natürlich ist es eine Frage dessen, was Ihr Mailserver akzeptiert. In meinem Fall nur 465 über TLS.
Die zwei erforderlichen Konfigurationszeilen, die zu app.yml hinzugefügt werden müssen, sind:
DISCOURSE_SMTP_FORCE_TLS: true
DISCOURSE_SMTP_ENABLE_START_TLS: false
Einige Details
Die Standardeinstellungen führten zu einem Net::ReadTimeout-Fehler, als ich versuchte, eine Test-E-Mail mit discourse-doctor zu senden. Das Senden von Test-E-Mails aus dem Container heraus funktioniert mit z. B. curl einwandfrei, genau wie in diesem Beitrag, der mich zur halben Lösung führte: Cannot send email - problem with port 465 - #10 by schungx
Über die zweite Einstellung konnte ich nur herausfinden, indem ich den Inhalt von app.yml durchgesehen und diesen Parameter geändert habe. Ich habe das Gefühl, dass die meisten Programme (z. B. Thunderbird) das richtige Protokoll implizit auswählen, wenn Port 465 ausgewählt wird, vielleicht sollte Discourse das auch tun? Dies scheint wirklich Standard zu sein, wie auch hier hervorgehoben:
(Link zum vollständigen Beitrag)
Daher würde ich wirklich dafür plädieren, den Abschnitt dieser Anleitung über Port 465 zu aktualisieren oder discourse-setup automatisch die beste Einstellung wählen zu lassen.