WSL2+Windows11环境下DDEV启动端口异常问题求助
DDEV端口故障排查与修复(Windows 11 + WSL2 + Docker Desktop)
场景一:80/443端口绑定失败
问题根源
端口80或443被其他进程占用,导致ddev-router容器无法完成端口绑定。
解决步骤
定位端口占用进程
- Windows端(管理员PowerShell)执行:
netstat -ano | findstr ":443" - 记录输出中的PID,打开任务管理器→详细信息,找到对应PID的进程并终止。常见占用进程包括IIS、Skype、Teams、杀毒软件内置Web服务等。
- 若为WSL2内部进程占用,进入WSL终端执行:
sudo lsof -i :443 sudo kill -9 <PID>
- Windows端(管理员PowerShell)执行:
检查Docker端口冲突
打开Docker Desktop→设置→资源→网络,确认无其他容器或Docker内置服务占用80/443端口。
场景二:自定义端口启动正常但连接终止
问题可能性
WSL2网络转发异常、防火墙拦截、DDEV内部服务故障、浏览器证书/缓存干扰。
解决步骤
验证DDEV内部服务可用性
- 进入WSL终端执行:
确认web容器状态为ddev describerunning,端口映射配置正确。 - 在WSL内部直接访问测试:
curl https://my-site.ddev.site:8443- 若能返回内容:问题出在Windows到WSL2的网络转发或防火墙。
- 若无法返回:排查项目配置或web服务运行状态。
- 进入WSL终端执行:
修复WSL2网络转发
- 重置WSL2网络:
wsl --shutdown net stop LxssManager net start LxssManager - 重启Docker Desktop和DDEV:
ddev poweroff && ddev start
- 重置WSL2网络:
调整防火墙规则
临时关闭Windows防火墙测试,若恢复正常,添加入站规则允许8000、8443端口的访问(来源选择WSL2的IP段,可通过wsl hostname -I获取)。处理浏览器与证书问题
- 使用浏览器隐私模式访问,排除缓存干扰。
- 重新生成DDEV本地证书:
访问站点时手动信任浏览器弹出的SSL证书。ddev poweroff && ddev start
排查项目配置
检查项目.ddev/config.yaml是否存在冲突配置,比如自定义web端口映射、nginx/apache配置错误等。可尝试创建全新DDEV项目测试:ddev create test-site && ddev start
通用排查补充
- 更新WSL2到最新版本:
wsl --update - 确认Docker Desktop的WSL集成已启用:设置→资源→WSL Integration,勾选当前使用的WSL发行版。
内容的提问来源于stack exchange,提问作者Matthew
相关产品推荐
相关产品推荐

