如何使用 docker 为 sendmail 配置 exim

How to configure exim with docker for sendmail

我正在使用 docker 容器来处理使用此 exim 图像的电子邮件

https://registry.hub.docker.com/u/tianon/exim4/

如果我在其他网站上使用 smtp 主机作为连接器名称并且

现在我的 joomla 站点正在使用 sendmail,我不知道如何 link 使用 exim 容器发送邮件

尝试发送邮件时出现此错误

Could not execute: /usr/sbin/sendmail

没错,因为 snedmail 没有安装在 joomla 容器中,但如何解决这个问题

根据 the documentation,Joomla 本机支持将邮件发送到 SMTP 服务器。然而,如果这不起作用(例如,如果您有忽略 Joomla 设置的扩展并且总是尝试使用本地 sendmail 二进制文件),您可以安装一个 sendmail 替代方案来为您执行必要的 SMTP 事务。

一个常见的解决方案是 msmtp, which is often used by mutt 用户为 mutt 邮件程序提供 SMTP 服务器。 msmtp 客户端与命令行兼容,因此您可以安装 msmtp 然后:

ln -s /usr/bin/msmtp /usr/sbin/sendmail

只要您进行了适当的配置,这应该可以解决您的问题。

几乎所有主要的 MTA 都支持 "sendmail compatibility mode",而 Exim 确实支持。修复很简单。作为 root,执行:

cd /usr/sbin
ln -s exim sendmail

然后当您的应用程序调用 /usr/sbin/sendmail 并在 STDIN 上向其传递消息时,exim 将在 sendmail 兼容模式下解析命令行选项。