如何从Windows主机连接到Docker桥接网络?
将Windows主机接入Docker WSL2桥接网络
环境与问题
- 已搭建Docker桥接网络,两台Linux容器IP为
172.19.0.2和172.19.0.3,互相ping通正常 - 运行环境:Windows系统 + Docker v20.10.17,已开启WSL2集成
- 执行
ipconfig /all找不到对应子网的虚拟适配器,需要让Windows主机接入这个Docker桥接网络
解决方法
1. 获取Docker桥接网络的详细信息
打开WSL2终端(比如Ubuntu),执行命令查看你创建的桥接网络参数:
docker network inspect <你的桥接网络名称>
从输出里记下子网段(比如172.19.0.0/16)和网关IP(一般是子网的第一个可用IP,比如172.19.0.1)
2. 找到WSL2虚拟机的IP
同样在WSL2终端里执行:
ip addr show eth0
记录下WSL2虚拟机的IP(比如172.22.0.2,这是WSL和Windows主机通信的专属IP)
3. 在Windows主机添加静态路由
以管理员身份打开CMD,执行以下命令,把Docker桥接子网的流量导向WSL2虚拟机:
route add 172.19.0.0 mask 255.255.0.0 <WSL2虚拟机IP> -p
- 把
172.19.0.0换成你实际的子网段,255.255.0.0对应子网掩码 <WSL2虚拟机IP>替换成步骤2里记录的IP-p是永久保存路由,重启Windows后不会失效
4. 测试连通性
在Windows主机CMD里执行:
ping 172.19.0.2
能ping通就说明主机已经成功接入Docker桥接网络了
额外说明
- 为什么
ipconfig看不到适配器?因为WSL2模式下的Docker桥接网络是在WSL虚拟机内部创建的,没有直接映射到Windows的虚拟适配器,所以Windows端看不到 - 如果WSL2虚拟机重启后IP变了,需要重新执行步骤2和3更新路由
内容的提问来源于stack exchange,提问作者g.pickardou
相关产品推荐
相关产品推荐

