docker堆栈networking问题

我已经如下创build了Docker堆栈文件,它创build了3个服务,但是我无法访问主机的外部。 而且它也没有创build任何端口。 我创build了一个名为test01的覆盖networking。 当我通过命令行手动创build一个完美的作品。

version: '3.0' networks: default: external: name: test01 services: mssql: image: microsoft/mssql-server-windows-developer environment: - SA_PASSWORD=Password1 - ACCEPT_EULA=Y ports: - 1433:1433 volumes: - c:\Databases:c:\Databases deploy: placement: constraints: [node.labels.os==Windows] web: image: iiswithdb:latest ports: - 8080:8080 deploy: replicas: 3 lbs: image: nginx:latest ports: - 80: 80 deploy: placement: constraints: [node.labels.os==Windows] 

您的服务需要明确join您定义的networking。 你可以在撰写文件中做到这一点。 否则,他们将使用由堆栈/撰写创build的默认networking。 https://docs.docker.com/compose/compose-file/#networks

 c:\Program Files\docker>docker network inspect test01 [ { "Name": "test01", "Id": "8ffz8xihux13gx1uuhalub5by", "Created": "2017-09-11T12:30:35.7747711+05:30", "Scope": "swarm", "Driver": "overlay", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [ { "Subnet": "10.0.0.0/24", "Gateway": "10.0.0.1" } ] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": { "2f283e7c21608d09a57a7cdef25a836d77c0ceb8030ae15796ff692e43b0eb73": { "Name": "test_web.1.jti1pyrgxv3v4yet9m9cpk0i4", "EndpointID": "bed2a5e0d077fcf48ab2d6fe419a8a69a45c3033e1a8602cf6395f93bec405b8", "MacAddress": "00:15:5d:f3:aa:1a", "IPv4Address": "10.0.0.5/24", "IPv6Address": "" }, "8c55fad8ad54e5286bb7fc54da52ad1958854bceacbf0260400e7dc3c00c1c45": { "Name": "test_mssql.1.mn31bwoh8iwg5sge5rllh7gc9", "EndpointID": "00c6e68d6a22ee0dc5ad90cda7ab958323a0b07206ce4583f11baa8b3476de8f", "MacAddress": "00:15:5d:f3:aa:23", "IPv4Address": "10.0.0.3/24", "IPv6Address": "" } }, "Options": { "com.docker.network.driver.overlay.vxlanid_list": "4097", "com.docker.network.windowsshim.hnsid": "b76fa7e3-530d-4133-b72a-1d1818cd3c16" }, "Labels": {}, "Peers": [ { "Name": "node2-f3dedf0e26d9", "IP": "10.30.50.10" }, { "Name": "node3-2e1ad7fb91be", "IP": "10.30.50.13" } ] } 

]

以下是输出

 c:\Program Files\docker>docker service ls ID NAME MODE REPLICAS IMAGE PORTS bo9uovidd4z3 test_web replicated 3/3 iiswithdb:latest *:8080->8080/tcp sujwg53gjnp3 test_lbs replicated 0/1 nginx:latest *:80->80/tcp vyxyoaji8jkd test_mssql replicated 1/1 microsoft/mssql-server-windows-developer:latest *:1433->1433/tcp c:\Program Files\docker>docker service ps test_mssql ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS mn31bwoh8iwg test_mssql.1 microsoft/mssql-server-windows-developer:latest node2 Running Running 6 minutes ago 

当我检查SQL Server容器时,我找不到任何端口

 c:\Program Files\docker>docker service ps test_lbs ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS j4x806u1ucdr test_lbs.1 nginx:latest Running Pending 32 minutes ago c:\Program Files\docker>docker service ps test_web ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS jti1pyrgxv3v test_web.1 iiswithdb:latest node2 Running Running 22 minutes ago 1gudznmi9ufz \_ test_web.1 iiswithdb:latest node2 Shutdown Failed 27 minutes ago "task: non-zero exit (21479434…" xxkr98na4qsy test_web.2 iiswithdb:latest node3 Running Running 29 minutes ago 7j1y6vc90qvf test_web.3 iiswithdb:latest node3 Running Running 29 minutes ago 
 C:\Users\Administrator>docker service ls ID NAME MODE REPLICAS IMAGE PORTS 19qeljqt3wuf test_mssql replicated 1/1 microsoft/mssql-server-windows-developer:latest *:1433->1433/tcp 48gamfl4j4rl test_web replicated 3/3 iiswithdb:latest *:8080->8080/tcp nxycxrigmz4u test_lbs replicated 1/1 nginx:latest *:80->80/tcp C:\Users\Administrator>docker service ps test_lbs ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS 81fm4xplekig test_lbs.1 nginx:latest node2 Running Running 25 minutes ago C:\Users\Administrator>docker service ps test_web ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS aivzt7eagf4f test_web.1 iiswithdb:latest node1 Running Running about an hour ago sny1zf7osibq test_web.2 iiswithdb:latest node2 Running Running about an hour ago lwzlpaks1b4t \_ test_web.2 iiswithdb:latest node2 Shutdown Failed about an hour ago "task: non-zero exit (21479434…" iav5mxqdbzoy test_web.3 iiswithdb:latest node3 Running Running about an hour ago C:\Users\Administrator>docker service ps test_mssql ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS pfu8qyw7vqxp test_mssql.1 microsoft/mssql-server-windows-developer:latest node2 Running Running 26 minutes ago