Simple SMTP relay, originally based on alterrebe/docker-mail-relay, but has been rewritten since.
The container provides a simple SMTP relay for environments like Amazon VPC where you may have private servers with no Internet connection
and therefore with no access to external mail relays (e.g. Amazon SES, SendGrid and others). You need to supply the container with your
external mail relay address and credentials. The image is tested with Amazon SES
, Sendgrid
, Gmail
and Mandrill
- Uses
alpine
image instead ofubuntu
. - Uses
envsubst
for templating instead ofj2cli
. - All output goes to
stdout
andstderr
includingmaillog
. - Included
superviserd
event watcher which will exit thesupervisord
process if one of the monitored processes dies unexpectedly. - Doesn't use TLS on
smtpd
side. - And other changes to make the image as KISS as possible
- Remove
rsyslog
dependancy - Remove
supervisor
- Even more KISS, just single script used to configure and run
postfix
ENV. Variable | Description |
---|---|
ACCEPTED_NETWORKS |
Space delimited list of networks to accept mail from. Default: 192.168.0.0/16 172.16.0.0/12 10.0.0.0/8 |
RECIPIENT_RESTRICTIONS |
Space delimited list of allowed RCPT TO addresses. Default: unrestricted |
SMTP_HOST |
External relay DNS name. Default: email-smtp.us-east-1.amazonaws.com |
SMTP_LOGIN |
Login to connect to the external relay. Required |
SMTP_PASSWORD |
Password to connect to the external relay. Required |
SMTP_PORT |
External relay TCP port. Default: 25 |
TLS_VERIFY |
Trust level for checking remote side cert. Default: may (http://www.postfix.org/postconf.5.html#smtp_tls_security_level) |
USE_TLS |
Remote require tls. Must be yes or no . Default: no |
Postfix on port 25
Launch Postfix container:
docker run -d -h relay.example.com --name="mailrelay" \
-e RECIPIENT_RESTRICTIONS="gmail.com test@example.com" \
-e SMTP_LOGIN=myLogin \
-e SMTP_PASSWORD=myPassword \
-p 25:25 \
simenduev/postfix-relay