为什么ping到docker容器返回;请求超时“;?

为什么ping到docker容器返回;请求超时“;?,docker,wsl-2,Docker,Wsl 2,我有一个在本地计算机(docker for windows 10)上运行了很长时间的设置。最近我开始使用kubernetes,现在我的docker容器出现连接问题。我可以docker exec bash,但是ping到cotainer ip不起作用 我不是100%确定路由是如何工作的 这是我目前拥有的路由: # route PRINT =========================================================================== Inter

我有一个在本地计算机(docker for windows 10)上运行了很长时间的设置。最近我开始使用kubernetes,现在我的docker容器出现连接问题。我可以
docker exec bash
,但是ping到cotainer ip不起作用

我不是100%确定路由是如何工作的

这是我目前拥有的路由:

# route PRINT
===========================================================================
Interface List
  5...8c 89 a5 59 d0 9b ......Realtek PCIe GbE Family Controller
 14...00 ff 9a f5 da ac ......TAP-Windows Adapter V9
  1...........................Software Loopback Interface 1
 20...00 15 5d 1a 4c 88 ......Hyper-V Virtual Ethernet Adapter
 35...00 15 5d d6 58 e9 ......Hyper-V Virtual Ethernet Adapter #2
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0       10.0.0.138        10.0.0.15     35
         10.0.0.0    255.255.255.0         On-link         10.0.0.15    291
        10.0.0.15  255.255.255.255         On-link         10.0.0.15    291
       10.0.0.255  255.255.255.255         On-link         10.0.0.15    291
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    331
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    331
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    331
       172.16.0.0      255.240.0.0     192.168.65.0        10.0.0.15     36
   192.168.172.32  255.255.255.240         On-link    192.168.172.33   5256
   192.168.172.33  255.255.255.255         On-link    192.168.172.33   5256
   192.168.172.47  255.255.255.255         On-link    192.168.172.33   5256
  192.168.175.240  255.255.255.240         On-link   192.168.175.241   5256
  192.168.175.241  255.255.255.255         On-link   192.168.175.241   5256
  192.168.175.255  255.255.255.255         On-link   192.168.175.241   5256
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link         10.0.0.15    291
        224.0.0.0        240.0.0.0         On-link    192.168.172.33   5256
        224.0.0.0        240.0.0.0         On-link   192.168.175.241   5256
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    331
  255.255.255.255  255.255.255.255         On-link         10.0.0.15    291
  255.255.255.255  255.255.255.255         On-link    192.168.172.33   5256
  255.255.255.255  255.255.255.255         On-link   192.168.175.241   5256
===========================================================================
Persistent Routes:
  Network Address          Netmask  Gateway Address  Metric
       172.16.0.0      255.240.0.0     192.168.65.0       1
===========================================================================
docker网络:

# docker network inspect myappjose_default                                                                             
[                                                                                                                        
    {                                                                                                                    
        "Name": "myappjose_default",                                                                                   
        "Id": "28ea26ea55b012d25397029e02bb2ddd442f725b310a5bbd1ff321e563d257c2",                                        
        "Created": "2020-10-16T07:21:52.6360039Z",                                                                       
        "Scope": "local",                                                                                                
        "Driver": "bridge",                                                                                              
        "EnableIPv6": false,                                                                                             
        "IPAM": {                                                                                                        
            "Driver": "default",                                                                                         
            "Options": null,                                                                                             
            "Config": [                                                                                                  
                {                                                                                                        
                    "Subnet": "172.18.0.0/24"                                                                            
                }                                                                                                        
            ]                                                                                                            
        },                                                                                                               
        "Internal": false,                                                                                               
        "Attachable": true,                                                                                              
        "Ingress": false,                                                                                                
        "ConfigFrom": {                                                                                                  
            "Network": ""                                                                                                
        },                                                                                                               
        "ConfigOnly": false,                                                                                             
        "Containers": {                                                                                                  
            "0c78b6eb1b88447e5690caeb90343dbe345e9e32cc407a60e18aa6cacec37f53": {                                        
                "Name": "myappj1-model-container",                                                                     
                "EndpointID": "a85c982c4cb982be6ee654aa3680c50229b3a89032ba9d7b1191e530c29564cf",                        
                "MacAddress": "02:42:ac:12:00:02",                                                                       
                "IPv4Address": "172.18.0.2/24",                                                                          
                "IPv6Address": ""                                                                                        
            },                                                                                                           
            "e1b518b64b4cdc2e18412c4d53eb3342d313a476c925e4e94529a81d3fa30993": {                                        
                "Name": "myappj1-view-container",                                                                      
                "EndpointID": "c4e373e05daf55f726823bccce0aec8faf5deaef6b0223e15e692352f46653f7",                        
                "MacAddress": "02:42:ac:12:00:04",                                                                       
                "IPv4Address": "172.18.0.4/24",                                                                          
                "IPv6Address": ""                                                                                        
            },                                                                                                           
            "eaa89d990ebcb8f3f26a1e5aff5db6f0ecddbf2e07c13bc52dbb57332818ad47": {                                        
                "Name": "myappj1-controller-container",                                                                
                "EndpointID": "a0a35480e775bbab0e4a23819021751d4368b6d255ef519c89bc5ffd898441fb",                        
                "MacAddress": "02:42:ac:12:00:03",                                                                       
                "IPv4Address": "172.18.0.3/24",                                                                          
                "IPv6Address": ""                                                                                        
            }                                                                                                            
        },                                                                                                               
        "Options": {},                                                                                                   
        "Labels": {                                                                                                      
            "com.docker.compose.network": "default",                                                                     
            "com.docker.compose.project": "myappjose",                                                                 
            "com.docker.compose.version": "1.27.4"                                                                       
        }                                                                                                                
    }                                                                                                                    
]   
设置中的Docker网络:

ping不工作:

$ ping 172.18.0.4

Pinging 172.18.0.4 with 32 bytes of data:
Request timed out.  
我可以使用
docker exec
进入容器(因此它可以工作并且可以访问):

更新 它似乎与我本周安装的WSL2有关。docker正在使用wsl引擎,但wsl机器没有internet连接。我仍然不知道如何让它工作


知道怎么修吗?如果您需要更多信息,请告诉我,我将更新

为什么向容器发送ICMP数据包很重要?Docker专用IP地址通常也不有用,在许多常见环境中无法访问。忽略所有这些非常低级的调试工具:您能否与容器的已发布端口建立HTTP(或其他TCP)连接?你能提供一个包含所有相关源代码的示例来演示这个问题吗?问题是我以前有一些东西,mysql workbench连接到控件,vscode通过端口22运行测试。它们现在都不工作了,因为无法访问容器。如果有帮助的话,它似乎与我本周安装的WSL2有关
$ winpty docker exec -it myappj1-model-container bash
root@myappj1-model:/#