泊坞窗。从主机发送邮件

时间:2017-02-07 08:36:40

标签: ubuntu docker centos

我可以使用mail:

从主机发送邮件
mail -s "Hooray" smb@example.com < /dev/null

但我想使用主机服务器从docker容器发送邮件。 Docker说&#34;端口已经在使用&#34;当我尝试将它映射到运行命令中的25端口时:

run -ti -p 25:25 container

我如何实现目标? 主机是Centos,docker使用Ubuntu。

2 个答案:

答案 0 :(得分:0)

将端口转发与docker容器一起使用,可以将容器的端口转发给主机。因此,您已通过邮件服务器在主机上使用端口25。在这里,您需要将端口从主机转发到容器:

Forward host port to docker container

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

docker run --rm -it --net=host container mail -s "Hooray" smb@example.com < /dev/null

答案 1 :(得分:0)

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

run -ti -p 2525:25 container

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

如果您不知道主机上使用端口25的是什么,可以使用netstat命令查看:

sudo netstat -lntp

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