记录一次WSL修改networkingMode导致Docker端口无法访问的问题

最近踩了一个挺隐蔽的坑,简单记录一下。

一、问题现象

本地用 Docker Desktop(Windows + WSL2) 跑服务:

  • 容器正常运行,端口映射正常,本机也能正常访问
  • 其他人 / 局域网访问不了

Docker配置和防火墙看了一圈,都没发现问题。

二、原因

后来才发现,是自己之前改过WSL的网络配置 ,在 C:\Users\qianccc\.wslconfig

ini 复制代码
[wsl2]
networkingMode=mirrored

这个配置把WSL2的网络模式从默认的NAT 改成了mirrored(镜像宿主网络)

问题在于:Docker Desktop是跑在WSL2里的,而Docker的端口映射依赖WSL2默认的NAT转发机制,改成 mirrored 后,这套转发链路被绕开,导致端口只在本机可用,外部访问不到

然后查了一下自己可能改掉WLS默认的网络配置的原因:

  • 自己电脑ip经常变,导致Docker和本机经常网络不通
  • 在使用VPN的时候,WSL和Docker的网络经常异常

三、解决方案

把 WSL 网络模式改回默认即可。

修改 .wslconfig

ini 复制代码
[wsl2]
networkingMode=nat

然后执行:

bash 复制代码
wsl --shutdown

最后重启 Docker Desktop,端口对外访问就恢复正常了🎉

相关推荐
Yana.nice4 小时前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
2601_960567966 小时前
电商套图自动化效率的工程量化分析——从逐张生成到批量套图的架构演进
运维·架构·自动化
吳所畏惧7 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
张忠琳7 小时前
【NVIDIA】 NVIDIA Container Toolkit v1.19.1 — OCI 模块超深度分析之三
云原生·容器·架构·kubernetes·nvidia
HiDev_8 小时前
【非标自动化】2、认识元器件(确定目标)
运维·自动化
Zhang~Ling8 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
爱写代码的森9 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
Elastic 中国社区官方博客9 小时前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
中微极客9 小时前
2026主流AI Agent框架技术选型与性能对比
运维·网络·人工智能
久曲健的测试窝9 小时前
智能座舱自动化测试落地方案:数字仿真搭配实车实测,解决用例运维与场景失真难题
运维