我已经创建了码头集装箱并安装了mailpile开放源代码邮件客户端。 在容器中运行mailpile二进制文件会将以下消息输出到STDOUT。无法访问码头集装箱内的邮件服务器
The Web interface address is: http://localhost:33411/
所以我在主机上,打开Firefox和试图127.0.0.1:33411
。它不起作用。 然后我查找了docker分配给容器的IP地址。 我看着它通过在主机上运行以下命令, docker inspect mp | grep IP
它说的容器具有172.17.0.3
的IP地址,所以现在,我在Firefox试图172.17.0.3:33411
我的主机上运行。它仍然没有工作。
然后,我用docker stop mp
停止了容器。然后我将它交给名为mp_image
的图像。我在主机上运行以下命令来执行提交。
docker commit mp mp_image
提交后,我创建了一个新的运行容器,但是这一次的转发端口33411容器到主机的端口33411。我跑到下面的命令在主机上,
docker run -i -t -p 33411:33411 --name "mailpile" mp_image /bin/bash
而现在,当我在容器内得到的,再次运行mailpile二进制,并试图从主机访问它。这一次,我用在主机浏览器所有这些变化,
127.0.0.1:33411
172.17.0.3:33411
再次无法正常工作。现在我开始怀疑服务器是否在容器中运行。于是我走进容器里,做了wget 127.0.0.1:33411
。我有一个不错的index.html
文件。所以服务器正在运行..
我不知道该怎么做。有人可以咨询吗?
在你的容器进入以'搬运工exec'and与'netstat的-an'和类似的命令 – user2915097
'活动的互联网连接检查(服务器,并建立)'' 的Recv原-Q发送Q本地地址外地址状态' 'tcp 0 0 127.0.0.1:33411 0.0.0.0:* LISTEN' – Jay