MailDev を使ったローカルメールサーバーのセットアップ
はじめに
アプリケーション開発時、MailDev はローカル環境内でメールの送受信を行うための優れたツールです。本投稿では、Docker を使用して MailDev をセットアップし、メール機能をテストする手順を解説します。
MailDev を Docker でセットアップする
手順 1: Dockerfile を作成する
以下の例を参考にして Dockerfile
を作成してください。
FROM node:14-alpine
EXPOSE 1080
EXPOSE 1025
RUN npm i -g maildev
CMD ["maildev"]
MailDev は次の 2 つのポートを使用します。
1080
: 管理コンソール用1025
: SMTP 用
これらのポートはオプションでカスタマイズ可能です。
手順 2: Docker Compose 設定を作成する
以下の内容で docker-compose.yml
ファイルを作成してください。
version: '3'
services:
mail:
container_name: mail
build: ./
ports:
- "1080:1080"
- "1025:1025"
手順 3: Docker コンテナを起動する
以下のコマンドを実行して Docker コンテナを起動します。
docker-compose up -d mail
管理コンソールへのアクセス
コンテナを起動後、ブラウザを開いて http://localhost:1080
にアクセスすると、MailDev 管理コンソール を利用できます。
このコンソールを使用すると、MailDev サーバーに送信されたメールを表示および管理できます。
メール機能のテスト
メールを送信する
Windows を使用している場合、PowerShell の Send-MailMessage
コマンドでテストメールを送信できます。以下はその例です。
Send-MailMessage `
-from 'dev@localhost' `
-to 'dev.to@localhost' `
-subject 'Test Subject' `
-body 'This is a test email.' `
-smtpServer 'localhost' `
-port 1025
メールを受信する
メールを送信した後、MailDev 管理コンソール に移動して、メールが受信されていることを確認してください。
まとめ
MailDev を使用することで、アプリケーション開発中のメール機能テストが容易になります。Docker を活用することで、最小限の設定でローカルメールサーバーをセットアップできます。
Happy Coding! 🚀