DockerでpostfixにてSMTP送信テスト

Testing SMTP on Docker(postfix+mailhog)

* 本ページはプロモーションが含まれています

Dockerコンテナ内でSMTP送信をしたい状況があったので、mailhogを利用して試した。

ほぼ、こちら↑の記事を参考にさせていただきました

変更した点 

  • Dockerfileのイメージをalmalinuxへ変更
    centos8ではEOLが過ぎてパッケージ取得でエラーが出たため
  • docker-compose.ymlにprivileged: trueを追加
    cap-addでも起動は出来たが、エラーが出てたため

送信テスト 

  • 起動完了したら、Dockerコンテナ内にて25番ポートでpostfixで送信できるか確認。
  • relayhostでmaihogの1025番が使われてるので、実際の宛先に送信されるわけではないので安心
  • ホスト側だとそのまま1025番ポートで送信できる
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 0d95f56f386c.example.com ESMTP Postfix
mail from: <user@example.com>
250 2.1.0 Ok
rcpt to: <test@foo.com>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
subject: mail testing
it is testing
.
250 2.0.0 Ok: queued as 367DF26008A

Dockerコンテナから抜け、ホスト側のブラウザにて、http://localhost:8025へアクセスし、メールが届いていればOK


See also