MailDev容器和Django容器之间的邮件流量传递
[Errno 111] Connection refused
电子邮件流量到控制台后端工作,所以功能应该是正确的。在
send_mail(
'Subject here',
'Here is the message.',
'from@example.com',
['to@example.com'],
fail_silently=False
)
在我切换到SMTP后端并在容器中启动MailDev之后,我得到了:
[Errno 111] Connection refused
在设置.py在
^{pr2}$在Shell中:
sudo docker run -p 1080:80 -p 1025:25 --name maildev djfarrelly/maildev
我的Docker容器是:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a46040dd1259 djfarrelly/maildev "bin/maildev --web..." 11 seconds ago Up 9 seconds 0.0.0.0:1025->25/tcp, 0.0.0.0:1080->80/tcp maildev
4fed036f92d4 exposee "/usr/src/start.sh" 42 minutes ago Up 42 minutes 0.0.0.0:8000->8000/tcp exposee
2c2cf7ce19e9 winauth "gunicorn -b 0.0.0..." 43 minutes ago Up 43 minutes 127.0.0.1:9876->9876/tcp winauth
afe4a449aa01 postgres "docker-entrypoint..." 44 minutes ago Up 44 minutes 127.0.0.1:5432->5432/tcp postgres
我的设置设置.py是:
EMAIL_HOST = CONFIG.get('EMAIL_HOST', '127.0.0.1')
EMAIL_PORT = CONFIG.get('EMAIL_PORT', 1025)
EMAIL_USE_TLS = CONFIG.get('EMAIL_USE_TLS', False)
EMAIL_USE_SSL = CONFIG.get('EMAIL_USE_SSL', False)
我在中的配置配置.json是:
"EMAIL_HOST": "127.0.0.1",
"EMAIL_PORT": 1025,
"EMAIL_USE_TLS": false,
"EMAIL_USE_SSL": false
问题是您试图使用
127.0.0.1
从一个容器连接到另一个容器。如果此地址将与发送请求的容器对应,则这将不起作用。在为了使容器能够相互通信,标准的方法是将容器连接到一个公共网络。在
将发送请求的容器连接到网络:
^{pr2}$并将主机从
127.0.0.1
更改为maildev
相关问题 更多 >
编程相关推荐