2

我创建了两个 docker 网络

  1. 网络

     docker network create --subnet=172.19.0.0/16 chnetwork
    
  2. 内部网络

     docker network  create --internal --subnet 10.1.1.0/24 internal-network
    

在创建 docker 容器时我使用chnetwork

docker run -it -d --name containerone -h www.cone.net -v /var/www/html -p 3006:80 --net chnetwork --ip 172.19.0.40 --privileged magento

后来我改为内部网络并断开容器与chnetwork

docker network connect internal-network containerone
docker network disconnect chnetwork containerone

现在的问题是docker ps命令不显示该容器的端口,我的意思是端口在internal-network中不可访问。

当我将网络更改为chnetwork时,只有docker ps显示端口。在所有 docker 网络中都可以访问端口,我需要做什么?

4

1 回答 1

4

这似乎是内部网络的行为。由于连接到容器的唯一网络是不允许外部流量的内部网络,因此容器在设计上是隔离的。要发布端口,您需要将容器附加到非内部桥接网络。一旦将非内部桥接网络连接到容器,您将看到已发布的端口重新出现。

于 2016-10-15T14:06:56.980 回答