38 lines
No EOL
1.9 KiB
Markdown
38 lines
No EOL
1.9 KiB
Markdown
# docker-postfix
|
|
|
|
*Simple Docker image to run a Postfix MTA in relay mode*
|
|
|
|
---
|
|
|
|
This is a simple, Alpine-based image that runs Postfix in relay mode - that is, it accepts incoming mail and forwards it onto a remote SMTP server somewhere else for further processing.
|
|
|
|
You might want to do this in the instance where you have a lot of services on one machine that send email and you want one neat and tidy exit point for emails in your system.
|
|
|
|
## Use
|
|
|
|
This image can be found at `registry.git.tdpain.net/pkg/docker-postfix`.
|
|
|
|
It is configured using environment variables:
|
|
|
|
* `POSTFIX_SENDER_DOMAINS`: a whitespace-delimited list of domains to accept within the `From` header of the email, eg. `akpain.net tdpain.net`
|
|
* `POSTFIX_HOSTNAME`: the hostname of **this instance** of Postfix
|
|
* `POSTFIX_RELAY_HOST`: the hostname of the upstream relay to forward mail to, eg: `smtp.fastmail.com:587`
|
|
* `POSTFIX_RELAY_USER`: username for the relay server
|
|
* `POSTFIX_RELAY_PASSWORD`: password for the relay server
|
|
* This can also be specified as `POSTFIX_RELAY_PASSWORD_FILE` where the value of that var corresponds to a file inside the container.
|
|
|
|
You can then expose whatever ports you might want, or use the container within a Docker network. To expose `127.0.0.1:25`, you could use a command like:
|
|
|
|
```
|
|
docker run -d -p 127.0.0.1:25:25 \
|
|
-e POSTFIX_SENDER_DOMAINS=example.com \
|
|
-e POSTFIX_HOSTNAME=$(hostname)-relay \
|
|
-e POSTFIX_RELAY_HOST=smtp.fastmail.com:587 \
|
|
-e POSTFIX_RELAY_USER=dsfgkjhsd \
|
|
-e POSTFIX_RELAY_PASSWORD=gazpacho \
|
|
registry.git.tdpain.net/pkg/docker-postfix:latest
|
|
```
|
|
|
|
## Prior art
|
|
|
|
This was directly descended from [https://xc2.wb1.xyz/post/how-to-run-a-postfix-mail-server-in-a-docker-container/](https://xc2.wb1.xyz/post/how-to-run-a-postfix-mail-server-in-a-docker-container/) and indirectly from [https://github.com/bokysan/docker-postfix](https://github.com/bokysan/docker-postfix). |