在Windows版Docker中无法连接到容器IP地址

max*_*ver 3 networking hyper-v docker

当您安装使用Hyper-V的Windows的最新Docker时,会发生此问题。

但是,您可以在docker network inspect bridge输出中看到ips :

"Containers": {
            "...": {
                "Name": "dockerdevenvironment_rabbit_1",
                "EndpointID": "...",
                "MacAddress": "02:42:ac:11:00:04",
                "IPv4Address": "172.17.0.4/16",
                "IPv6Address": ""
            },
            "...": {
                "Name": "webserver",
                "EndpointID": "...",
                "MacAddress": "02:42:ac:11:00:02",
                "IPv4Address": "172.17.0.2/16",
                "IPv6Address": ""
            },
            "...": {
                "Name": "dockerdevenvironment_mongo_1",
                "EndpointID": "...",
                "MacAddress": "02:42:ac:11:00:05",
                "IPv4Address": "172.17.0.5/16",
                "IPv6Address": ""
            }
Run Code Online (Sandbox Code Playgroud)

您甚至无法ping通或以任何方式连接它们。

max*_*ver 5

默认情况下,dockerNAT将10.0.75.0/24分配给MobyLinuxVM。MobyLinuxVM内部的Docker为容器分配的IP地址为172.17.0.0/16。您必须更改路由表才能访问容器的IP地址:

route add 172.17.0.0 MASK 255.255.0.0 10.0.75.2 -p

来源:https : //forums.docker.com/t/connecting-to-containers-ip-address/18817