Я пытаюсь настроить контейнер SMTP Relay Docker, полученный из https://hub.docker.com/r/turgon37/smtp-relay, для использования другим контейнером в той же сети для отправки исходящих электронных писем на внешний SMTP-сервер. Этот контейнер SMTP Relay просто содержит postfix и его зависимости и настраивает postfix для работы в качестве SMTP Relay.
Простой пример на этой странице включает доменное имя. Но домены, похоже, не подходят для контейнеров docker, и, что еще хуже, это одна из немногих обязательных настроек, и ее краткое описание также далеко не ясно.
(К сожалению, хотя автор, очевидно, проделал хорошо продуманную и тщательную работу по этому вопросу, я не думаю, что Engli sh является его родным языком, и некоторые из кратких описаний несколько двусмысленны и сбивают с толку и могут означать противоположность того, что я предполагаю !)
Моя docker -композитная конфигурация включает в себя следующее, в котором я предполагаю (но готов к исправлению!), Что RELAY_HOST - это имя хоста или IP-адрес удаленного сервера, на который ретранслятор должен отправлять исходящие письма. Если это поможет, только контейнер «django_fred» будет отправлять исходящие электронные письма.
version: '3.3'
services:
application:
image: fred:latest
container_name: django_fred
build:
context: ./application
ports:
- "8000:8000"
depends_on:
- postgres
- cassandra
networks:
- frednet
postgres:
image: postgres:9.6.10
container_name: postgres_fred
networks:
- frednet
cassandra:
build:
dockerfile: Dockerfile
context: ./cassandra
image: fred/cassandra:yaml
container_name: cassandra_fred
networks:
- frednet
smtp-relay:
image: turgon37/smtp-relay:latest
container_name: smtp_relay
environment:
- RELAY_MYHOSTNAME=smtp_relay <-- is this correct/acceptable ?
- RELAY_MYDOMAIN=frednet.com <-- mandatory, but is this correct ?!
- RELAY_MYNETWORKS=frednet <-- is this correct ?
- RELAY_HOST=195.194.167.24:25
ports:
- "25:25" <-- example includes an IP address in \
- "587:587" <-- square brackets, but is that needed ?! \
networks: <-- Also, why does it differ from RELAY_HOST ?!
- frednet:
networks:
frednet:
, и приведенный выше пример выглядит следующим образом:
* unauthenticated smtp relay filtered by subnet and domain name
services:
smtp-relay:
image: turgon37/smtp-relay:latest
environment:
- RELAY_POSTMASTER=postmaster@example.net
- RELAY_MYHOSTNAME=smtp-relay.example.net
- RELAY_MYDOMAIN=example.net
- RELAY_MYNETWORKS=127.0.0.0/8 10.0.0.0/24
- RELAY_HOST=[10.1.0.1]:25
ports:
- "10.0.0.1:3000:25"
Помимо моих вопросов, отмеченных «<-» в конфигурации Docker, приведенной выше, я хотел бы понять, почему в записи «ports:» в конце примера указан IP-адрес, и где / почему в него входит порт 3000? </p>
Есть идеи? ТИА