标签: network-programming docker ports
我了解要在Docker容器中公开端口,您可以使用-p标记(例如-p 1-100:1-100)。但是有一种很好的方法可以将大量可能的端口从容器暴露给主机吗?例如,如果我在一个位于VM中的容器中运行各种路由器,并且我希望将容器中的所有端口从32768向上暴露到65535,那么有一种很好的方法吗?目前我已尝试使用-p标志,并抱怨内存分配错误。
-p
-p 1-100:1-100
答案 0 :(得分:2)
NVM。我想出了我的误解。 -P是我想要的,我希望公开而不是显式映射端口。
-P
答案 1 :(得分:1)
TL;博士
docker run --net=host ...
Docker为容器提供不同的网络模式。默认情况下,网络模式为bridge,这意味着需要公开端口。
bridge
如果您使用网络模式host运行容器,则您不需要公开/转发端口,因为docker主机和容器将共享相同的网络接口。
host
在容器中,localhost将引用docker主机。事实上,在容器中打开的任何端口都在docker主机网络接口上打开。
localhost