This image allows linked containers to send outgoing email. You can configure it to send email directly to recipients, or to act as a smart host that relays mail to an intermediate server (eg, GMail, SendGrid).
- Code repository: https://github.com/BytemarkHosting/docker-smtp
- Where to file issues: https://github.com/BytemarkHosting/docker-smtp/issues
- Maintained by: Bytemark Hosting
- Supported architectures:
Any architecture that has the Debian
exim4-daemon-light
package
In this example, linked containers can connect to hostname mail
and port 25
to send outgoing email. The SMTP container sends email out directly.
docker run --restart always --name mail -d bytemark/smtp
version: '3'
services:
mail:
image: bytemark/smtp
restart: always
In this example, linked containers can connect to hostname mail
and port 25
to send outgoing email. The SMTP container acts as a smart host and relays mail
to an intermediate server server (eg, GMail, SendGrid).
docker run --restart always --name mail \
-e RELAY_HOST=smtp.example.com \
-e RELAY_PORT=587 \
-e [email protected] \
-e RELAY_PASSWORD=secretpassword \
-d bytemark/smtp
version: '3'
services:
mail:
image: bytemark/smtp
restart: always
environment:
RELAY_HOST: smtp.example.com
RELAY_PORT: 587
RELAY_USERNAME: [email protected]
RELAY_PASSWORD: secretpassword
All environment variables are optional. But if you specify a RELAY_HOST
, then
you'll want to also specify the port, username and password otherwise it's
unlikely to work!
MAILNAME
: Sets Exim'sprimary_hostname
, which defaults to the hostname of the server.RELAY_HOST
: The remote SMTP server address to use.RELAY_PORT
: The remote SMTP server port to use.RELAY_USERNAME
: The username to authenticate with the remote SMTP server.RELAY_PASSWORD
: The password to authenticate with the remote SMTP server.RELAY_NETS
: Declare which networks can use the smart host, separated by semi-colons. By default, this is set to10.0.0.0/8;172.16.0.0/12;192.168.0.0/16
, which provides a thin layer of protection in case port 25 is accidentally exposed to the public internet (which would make your SMTP container an open relay).