Dockerで構築!メールサーバーを5分で

Dockerでメールサーバー開発
Gerd AltmannによるPixabayからの画像

何かの調査でちょっとメール送受信を確認したい、ということがあるかと思います。今回は、そんな時に役立つさっとメールサーバーを構築する手順を紹介します。

スポンサーリンク
スポンサーリンク

はじめに

メールサーバーは、Dockerイメージtvial/docker-mailserverを利用して構築します。SMTPとIMAPを構成しています。実験環境として、サーバーにUbuntu20.10、クライアントにWindows 10を用意しました。

メールサーバー構築

準備

サーバー側にdockerおよびdocker-composeのモジュールが必要です。まだ導入していない場合、これらのモジュールを用意してください。

Ubuntu20.10でのdockerおよびdocker-compose導入手順は、Ansible AWXを構築するにも記載しています。

モジュール入手

メールサーバー構築に必要なモジュールを4ファイル入手します。

wget https://raw.githubusercontent.com/tomav/docker-mailserver/master/setup.sh

wget https://raw.githubusercontent.com/tomav/docker-mailserver/master/docker-compose.yml

wget https://raw.githubusercontent.com/tomav/docker-mailserver/master/mailserver.env

curl -o .env https://raw.githubusercontent.com/tomav/docker-mailserver/master/compose.env

chmod a+x ./setup.sh

ls -la

環境設定

必要に応じて、環境設定を見直します。今回手順では、メールのドメイン名を一部変更しました。

vi .env

...
DOMAINNAME=domain.local
...

コンテナ設定

コンテナを起動して、導入に必要な初期設定を行います。ここで設定しているアカウント名およびパスワードは任意です。

sudo docker-compose up -d

sudo ./setup.sh email add user1@domain.local P@ssw0rd

sudo ./setup.sh alias add postmaster@domain.local user1@domain.local

sudo ./setup.sh config dkim

sudo docker restart mail

SELinux環境で構築する場合は、tvial/docker-mailserverの[Get up and running > with SELinux]を参照してください。

メールアカウント追加

メールアカウントを別に追加する場合、下記コマンドを必要分実行してください。

sudo ./setup.sh email add <user@domain> [<password>]

クライアント設定

メールクライアントとして、Windows 10にThunderbirdを設定します。

アカウント設定

サーバーに設定した、アカウント名とパスワードを入力します。あとは、「手動設定」で行います。
SMTP/IMAPのサーバー欄に、UbuntuサーバーのIPアドレスを入力するだけで、「再テスト」ボタンクリックで、あとは自動的に設定してくれます。

メール送受信

自分自身にメールを送信すると、無事受信もできました。

まとめ

今回の手順で、一昔前は長時間かけて構成していたメールサーバーをあっという間に構築できたと思います。メールサーバー構築作業はさっと終わらせて、本来着手したい作業に時間を費やしていきましょう。

今回利用したDockerイメージtvial/docker-mailserverは他にもいろいろな機能を搭載しているので、興味のある方はHPから使い方を参照してください。

以上、Dockerでメールサーバーを構築する手順の紹介でした。

スポンサーリンク
スポンサーリンク
スポンサーリンク
開発
Tech WalkIt

コメント