Networking 为什么可以';我不能从Docker容器访问主机端口吗?

Networking 为什么可以';我不能从Docker容器访问主机端口吗?,networking,docker,Networking,Docker,我读过一篇文章,其中提出了同样的问题,但解决方案似乎不起作用。基本上,我试图从docker内部访问主机操作系统上的一个端口,并使用链接文章中建议的--net=“host”标志。但是,我仍然无法访问该端口。唯一对我有效的方法是在0.0.0.0上运行主机web服务,然后从192.168.#####访问它,但地址会根据我使用的Wifi而变化,所以我不想这样做。以下是我尝试过的: 设置我可以尝试从容器内部访问的测试Web服务器: bash-3.2$ echo hi > index.html bas

我读过一篇文章,其中提出了同样的问题,但解决方案似乎不起作用。基本上,我试图从docker内部访问主机操作系统上的一个端口,并使用链接文章中建议的
--net=“host”
标志。但是,我仍然无法访问该端口。唯一对我有效的方法是在
0.0.0.0
上运行主机web服务,然后从
192.168.#####
访问它,但地址会根据我使用的Wifi而变化,所以我不想这样做。以下是我尝试过的:

设置我可以尝试从容器内部访问的测试Web服务器:

bash-3.2$ echo hi > index.html
bash-3.2$ python -m SimpleHTTPServer 1234 >/dev/null 2>&1 &
[1] 57942
root@moby:/# curl localhost:1234
curl: (7) Failed to connect to localhost port 1234: Connection refused
从主机卷曲它以确保它正在运行:

bash-3.2$ curl localhost:1234
hi
启动已安装curl()的容器:

尝试从容器内部卷曲:

bash-3.2$ echo hi > index.html
bash-3.2$ python -m SimpleHTTPServer 1234 >/dev/null 2>&1 &
[1] 57942
root@moby:/# curl localhost:1234
curl: (7) Failed to connect to localhost port 1234: Connection refused
我使用的是macOS,因此我认为这可能与容器的主机是boot2docker而不是mac有关,但我仍然不知道如何缓解这种情况


任何建议都将不胜感激!:)

我似乎误解了你的问题。我不知道如何做你想做的事,所以我将删除我的答案。无论如何,谢谢你,我真的很感谢你花了这么多时间来帮助我!:)我在Ubuntu14.04上尝试了完全相同的方法,但效果很好。所以你是对的,这很可能是一个
MAC
问题。我对
MAC
没有任何经验,所以我只能帮助你。这似乎是
MAC
的Docker中的一个bug。看到和