Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 如何选择要进行端口映射的网络_Docker_Docker Compose - Fatal编程技术网

Docker 如何选择要进行端口映射的网络

Docker 如何选择要进行端口映射的网络,docker,docker-compose,Docker,Docker Compose,我有一个链接到多个网络的容器。如文档中所述,此容器的默认网关是按字典顺序排列的第一个网络。这工作正常 现在我想从外面打开一个港口 我使用端口功能。当我查看iptables时,它似乎在将传入的数据包转发到某个随机网络。不是字典顺序中的第一个 这样,数据包从给定的网关进入,从不同的网关流出 您知道当我这样做时,我如何指定: port: - 80:80 如何指定我要转发到哪个网络 编辑:更多信息 所以我有一个容器a属于a_网,B属于B_网,C同时属于a_网和B_网 C et A_net的默认网关

我有一个链接到多个网络的容器。如文档中所述,此容器的默认网关是按字典顺序排列的第一个网络。这工作正常

现在我想从外面打开一个港口

我使用
端口
功能。当我查看iptables时,它似乎在将传入的数据包转发到某个随机网络。不是字典顺序中的第一个

这样,数据包从给定的网关进入,从不同的网关流出

您知道当我这样做时,我如何指定:

port:
  - 80:80
如何指定我要转发到哪个网络

编辑:更多信息

所以我有一个容器a属于a_网,B属于B_网,C同时属于a_网和B_网

C et A_net的默认网关

但是在docker文件中。我说,对于容器C,端口80应该映射到端口80。有时生成的iptable会转发到B_net


非常感谢

它是转发到随机网络,还是docker compose创建的特定于您的compose实例的网络?请参阅
docker inspect$containerid
,了解容器所在网络的详细信息。它正在转发到容器所属的随机网络(但不是按字母顺序排列的第一个)。感谢您的澄清,这很有意义。它是否正在转发到随机网络,还是docker compose创建的特定于您的compose实例的网络?有关容器所在网络的详细信息,请参见
docker inspect$containerid
。它正在转发到容器所属的随机网络(但不是按字母顺序排列的第一个)。这很有意义,感谢您的澄清。