Локальный MTA на Docker-хосте
Самый простой вариант — отключить прослушивание на порту 25/tcp.
Пользователи Postfix отключают прослушивание, закомментировав следующую строку (начинающуюся с smtp или 25) в /etc/postfix/master.cf:
#smtp inet n - - - - smtpd
Кроме того, для ретрансляции через контейнеризированный animails может потребоваться добавить 172.22.1.1 в качестве relayhost и удалить интерфейс Docker из «inet_interfaces»:
postconf -e 'relayhost = 172.22.1.1'
postconf -e "mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128"
postconf -e "inet_interfaces = loopback-only"
postconf -e "relay_transport = relay"
postconf -e "default_transport = smtp"
Важно, чтобы значение myhostname не совпадало с FQDN, который используется для вашего animails в Docker. Проверьте параметр myhostname в main.cf вашего локального (не Docker) Postfix и установите другое значение, например local.my.fqdn.tld.
«172.22.1.1» — это сетевой шлюз, созданный animails в Docker. Ретрансляция через этот интерфейс необходима (вместо, например, прямой ретрансляции через ${MAILCOW_HOSTNAME}) для пересылки через известную внутреннюю сеть.
Перезапустите Postfix после внесения изменений.