【问题标题】:How to configure exim with docker for sendmail如何使用 docker 为 sendmail 配置 exim
【发布时间】:2015-03-08 01:19:34
【问题描述】:

我正在使用 docker 容器来使用这个 exim 图像发送电子邮件

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

如果我在其他网站中使用 smtp 主机作为容器名称,并且

现在我的 joomla 网站正在使用 sendmail,我无法弄清楚如何将 sendmail 与 exim 容器链接

我在尝试发送邮件时收到此错误

Could not execute: /usr/sbin/sendmail

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

【问题讨论】:

  • Joomla 似乎原生支持通过 SMTP 发送邮件,而不是依赖于 /usr/sbin/sendmail
  • @larsks 我确实发现了,但我看到许多扩展依赖于发送邮件来发送邮件。我必须手动将他们的设置更改为 SMTP 。我在想是否也可以修复 sendmail,这样如果我错过了什么,那么发送邮件也应该在那里工作

标签: linux ubuntu docker sendmail exim


【解决方案1】:

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

一个常见的解决方案是msmtpmutt 用户经常使用它来为mutt 邮件程序提供 SMTP 服务器。 msmtp 客户端是命令行兼容的,所以你可以安装msmtp 然后:

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

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

【讨论】:

    【解决方案2】:

    几乎所有主要的 MTA 都支持“sendmail 兼容模式”,而 Exim 确实支持。修复很简单。以 root 身份执行:

    cd /usr/sbin
    ln -s exim sendmail
    

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

    【讨论】:

      猜你喜欢
      • 2012-05-08
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多