run postfix with smtp authentication (sasldb) in a docker container. TLS and OpenDKIM support are optional.
- Docker 1.0
- 
Build image $ sudo docker pull catatnight/postfix 
- 
Create postfix container with smtp authentication $ sudo docker run -p 25:25 \ -e maildomain=mail.example.com -e smtp_user=user:pwd \ --name postfix -d catatnight/postfix # Set multiple user credentials: -e smtp_user=user1:pwd1,user2:pwd2,...,userN:pwdN
- 
Enable OpenDKIM: save your domain key .privatein/path/to/domainkeys$ sudo docker run -p 25:25 \ -e maildomain=mail.example.com -e smtp_user=user:pwd \ -v /path/to/domainkeys:/etc/opendkim/domainkeys \ --name postfix -d catatnight/postfix 
- 
Enable TLS(587): save your SSL certificates .keyand.crtto/path/to/certs$ sudo docker run -p 587:587 \ -e maildomain=mail.example.com -e smtp_user=user:pwd \ -v /path/to/certs:/etc/postfix/certs \ --name postfix -d catatnight/postfix 
- Login credential should be set to ([email protected],password) in Smtp Client
- You can assign the port of MTA on the host machine to one other than 25 (postfix how-to)
- Read the reference below to find out how to generate domain keys and add public key to the domain's DNS records