当前位置: 首页 > 知识库问答 >
问题:

Docker。从主机发送邮件

笪昌翰
2023-03-14

我可以从主机发送邮件,使用邮件:

mail -s "Hooray" smb@example.com < /dev/null

但我想使用主机服务器从docker容器发送邮件。在运行命令中,当我尝试将端口映射到25端口时,Docker说“端口已在使用中”:

run -ti -p 25:25 container

我怎样才能达到目标?主机是Centos,docker使用Ubuntu。

共有2个答案

娄建义
2023-03-14

您不能在同一端口上侦听多个应用程序。因此,如果主机上已有一个应用程序监听端口25,您可以停止该应用程序,或者将容器配置为监听其他主机端口,例如:

run -ti -p 2525:25 container

这会导致端口从主机端口2525映射到容器端口25。如果您不需要从容器接收邮件,您可以完全删除此端口映射,这仍然允许您发送出站邮件。

如果您不知道主机上端口25的用途,可以使用netstat命令查找:

sudo netstat -lntp

请注意,如果要查看侦听端口的进程,则需要sudo。

吕宇定
2023-03-14

将端口转发与 Docker 容器结合使用,可以将容器的端口转发到主机。因此,邮件服务器已经在主机上使用端口25。在这里,您需要将端口从主机转发到容器:

将主机端口转发到docker容器

最简单的方法是使用 --net=host 选项:

docker run --rm -it --net=host container mail -s "Hooray" smb@example.com < /dev/null
 类似资料:
  • 问题内容: 我正在Windows上使用WampServer来测试站点。我有一个注册系统,用户会收到一封确认电子邮件。 是否可以从本地主机发送电子邮件? 问题答案: 如果要直接从本地主机发送电子邮件,则需要安装邮件传输代理(MTA),或者安装SMTP服务。 IIS提供了一个。否则,您可以在Google上找到其他人。 您也可以更改 邮件设置。这将不使用每条说来发送电子邮件,而是用于允许您从PHP脚本发

  • 问题内容: 我想通过本地托管的php代码发送电子邮件。 运行此代码时,出现以下错误: 我进入文件,它似乎已经配置好。 我怎样才能解决这个问题 ? 谢谢 问题答案: 它被配置为用于邮件服务器。 错误消息表明它无法连接到。 因此,您有两个选择: 在本地主机端口25上安装/正确配置SMTP服务器 更改配置以指向 可以 连接到的其他一些SMTP服务器

  • 我无法发送电子邮件从本地主机使用php脚本这是我的代码 ?> php.ini文件... “邮件功能” ;仅适用于Win32。 请帮助我解决我的问题。

  • 我在我的camunda环境中有这个类(我在camunda modeller中使用这个类作为服务任务):

  • 问题内容: 用Java发送和接收邮件的最简单方法是什么。 问题答案: 不要忘记Jakarta Commons Email 发送邮件。它具有非常易于使用的API。

  • 我正在开发firebase web应用程序。我需要通过我的网络应用发送电子邮件。我看了一些教程,找到了一些代码。使用上述代码,我可以发送电子邮件。它在端口9091中运行。当地址栏上有www.mywebsite时,将发送此消息。com/sendMail。但是,当我将此页面托管到Firebase时,此代码中要做哪些更改,端口号是否必须更改?。请帮助在我的web应用程序中实现此代码。