У меня есть работающий postfix
почтовый сервер на моем ubuntu
хосте. Позже я мог бы заменить его также контейнером докеров, но для миграции я хочу сначала придерживаться постфикса хоста.
Как я могу отправлять электронные письма с docker container
на постфикс хоста, если я хочу минимизировать размер изображения?
Я попытался установить bsd-mailx
внутри контейнера, так как он имеет небольшой размер упаковки.
В общем, теперь я мог отправлять электронные письма с помощью:
echo "test header" | mail -s "test body" [email protected]
Но как я могу сказать команде в контейнере докера, чтобы она действительно отправила почту в хост-систему? Или мне придется монтировать/привязывать что-то из постфикса хостов в контейнер? Так что mailx отправляет почту на монтирование?
mail/mailx оба вызывают двоичный файл с именем sendmail. Это означает, что вам необходимо установить MTA, предлагающий именно этот интерфейс.
Разве я не могу просто смонтировать sendmail
с хоста в контейнер?
Это может сработать :) Совет: sendmail может находиться в разных местах: /usr/sbin/sendmail и /usr/lib/sendmail.
К сожалению, невозможно было просто смонтировать sendmail с хоста. Таким образом, я установил msmtp-mta
и теперь могу отправлять почту хостам с постфиксом: echo "Subject: test" | sendmail [email protected] --host=host.docker.internal [email protected]
Команда
mailx
работает, передавая сообщение/usr/sbin/sendmail
. Вы можете предоставить эту команду, используя что-то вродеssmtp
, и настроитьssmtp
для передачи почты в ваш постфиксный контейнер с использованием SMTP.