imixs/exim4此Docker镜像提供作为智能主机运行的邮件传输代理(MTA),适用于Docker容器。该容器可用于从其他容器发送电子邮件。MTA基于Exim4,灵感来源于greinacker/exim4 Docker镜像,且基于debian:jessie构建。
imixs/exim4提供以下环境变量:
按照Docker安装说明为您的主机系统安装Docker。
容器可作为后台进程启动。使用以下命令启动实例:
bashdocker run --name="smarthost" -d \ -e EXIM_SMARTHOST="target.mail.server.example:25" \ -e EXIM_PASSWORD="target.mail.server.example:login:password" \ imixs/exim4
环境参数EXIM_SMARTHOST指向exim4使用的目标邮件服务器。环境参数EXIM_PASSWORD会写入exim4/passwd文件,包含目标邮件服务器、用户和登录数据。
要停止并删除Docker容器,运行以下命令:
bashdocker stop smarthost && docker rm smarthost
Exim4默认的MESSAGE_SIZE_LIMIT为50M。为避免垃圾邮件,Exim4会拒绝超过此大小的邮件。您可以通过设置环境变量EXIM_MESSAGE_SIZE_LIMIT来指定不同的大小。
示例:
bash-e EXIM_MESSAGE_SIZE_LIMIT=100M
注意:该值必须设置为整数,且不能包含引号。(100M = 100 MB,***字节为相同值)
在imixs/exim4容器中,您可以使用以下命令验证当前设置:
bash$ exim4 -bP message_size_limit
要查看exim4服务器日志:
bashdocker logs -f smarthost
要测试智能主机配置,请先登录到smarthost的bash:
bash# 登录bash docker exec -it smarthost /bin/bash
使用以下命令测试发送邮件:
bashecho "This is the message" | mail -s "The subject" *** -aFrom:***
您可以将smarthost Docker容器链接到Docker网络中的其他容器,以允许它们通过智能主机发送邮件。
注意默认环境设置:
EXIM_ALLOWED_SENDERS=172.17.0.0/24:127.0.0.1
此环境变量定义是否允许Docker主机上运行的其他Docker容器使用MTA发送电子邮件。默认设置为"172.17.0.0/24:127.0.0.1",允许所有链接的容器发送邮件。如果您的Docker虚拟网络有自定义需求,请自定义此参数。如果设置不正确,您通常会看到类似以下的日志消息:
...exim4 IP地址 .. 中继不允许...
源代码可在Github获取。请报告任何问题。
从Dockerfile构建镜像:
bashdocker build --tag=imixs/exim4 .
要将镜像推送到Docker仓库:
bashdocker build -t imixs/exim4:X.X.X . docker push imixs/exim4:X.X.X
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务