skillup

技術ブログ

メール

Dockerでのメール送信に関して

投稿日:2021年2月14日 更新日:

Docker内でメール送信したいときなど。

通常であればWebコンテナ用にphp-7.4などのapache(or nginx)だけの最小構成になっていることがほとんどだと思いますので、メール送信ができないかと思います。

かといってCentOSなどを入れるのはDockerの用途に適していないため、Dockerでメール送信ができるコンテナについて色々と探したところ、mailHogというツールが有用なようです。

特徴としては

  • 実際にはメールを送らず、ローカル内の閉じた環境で確認ができる
  • 送信したメールをGUIツールでブラウザから確認できる(Mailtrapに似ている。)

のような感じです。

構成

Dockerfile

PHPのコンテナの中に以下の2行を追加すればOKです。

docker-compose.yml

あとはPHPコンテナの中に入って
mb_send_mail〜 など普通のメール送信のプログラムを実行すればOKです。

http://localhost:8025にアクセスをすると下記の用にメールの形跡を見ることができます。(実際には送信はされません。)

サンプルコード

参考URL

開発環境でのメール確認用にMailHogを利用する(Docker利用)

-メール
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

ドメイン取得とメール送信

現在ではメール配信サービスなどが充実しており、メールサーバーを立てる機会なんぞは少ないかとしれません。 そもそも一般的なレンタルサーバー会社の場合、レジストラとセットになっていることが多いですよね。そ …

no image

メール送信に関して その2 メールメッセージのデータ形式

前回に引き続き、メールのメッセージ構造について書きたいと思います。 Contents1 大まかな構造2 ヘッダ部2.1 メールアドレス2.2 From/Sender/Reply-To2.3 To/Cc …

no image

PHPMailerに関して(PHPのメール送信)

PHPのMailライブラリに関して。 今までmb_send_mailとかで誤魔化してましたが、以下のようにライブラリで送るケースのサンプル。 https://github.com/umanari145 …

no image

メールパーサー(mailparseとphp-mime-mail-parser)に関して

以前、POP3を使ったメール受信というエントリーでメールパーサーをインストールしたんですが、他のライブラリをインストールする機会があったんでメモ。 https://github.com/php-mim …

no image

メールを受信してプログラムを起動させる

今年の初めごろにやったプログラムです。 かなり汎用的なのと、使えそうなのでメモしときます。 題の通り、メールを受信して、それをトリガーにしてなんらかのプログラムを起動させます。 ここではPHPで、ある …

アーカイブ