Meine Website läuft seit einigen Jahren problemlos. Plötzlich funktionierte SMTP einfach nicht mehr. (Ich habe keine Konfigurationsänderungen am Host oder im Container vorgenommen).
Ich verwende SMTP (nicht SMTPS). Ich bin in den Discourse-Container eingestiegen und habe getestet, ob ich E-Mails mit curl senden kann:
Discourse sendet jedoch keine E-Mails und die Protokolle sagen nur:
Net::ReadTimeout with #<Socket:(closed)>
Die Postfix-Protokolle auf dem Host sagen:
connect from unknown[172.17.0.5]
lost connection after CONNECT from unknown[172.17.0.5]
disconnect from unknown[172.17.0.5] commands=0/0
Hat jemand eine Ahnung, was sich geändert haben könnte?
Vielen Dank im Voraus.
GI
PS: Entschuldigung, die erste Version dieses Beitrags wurde versehentlich gekürzt und nur die Hälfte der Nachricht wurde gepostet. Ich habe sie gerade bearbeitet.
Ich habe das Problem verfolgt. Es stellt sich heraus, dass der Host jetzt eine 7-Sekunden-Verzögerung für alle eingehenden E-Mails (auch von Containern) auferlegt. Discourse läuft standardmäßig nach 5 Sekunden ab.
Ich habe es in containers/app.yml auf 10 Sekunden erhöht:
Es funktioniert jetzt… aber weiß jemand, wie man die Postfix-Verzögerung auf dem Host loswird? Ich habe die Konfigurationsdateien durchsucht, aber nichts gefunden…
Ich habe gerade statische IP-Adressen (mit Dummy-Hostnamen) für alle IP-Adressen hinzugefügt, die Docker normalerweise zuweist (172.17.0.2 bis 10). Wenn mein Container also mit einer anderen IP-Adresse startet, wird er hoffentlich nicht beim nslookup hängen bleiben.
Ich frage mich, ob es eine Möglichkeit gibt, dass Docker die IP-Adressen aller Container auflösen kann…