使用WSL2、docker-ce和DDEV时Docker容器内无法解析主机名
DDEV Web容器DNS解析失败的修复方案
查看并修改容器内DNS配置
进入容器后执行命令检查当前DNS设置:cat /etc/resolv.conf若显示的DNS服务器无法正常解析,手动替换为公共DNS:
echo "nameserver 8.8.8.8" > /etc/resolv.conf完成后重新测试
curl www.youtube.com。重启DDEV容器
在WSL2宿主环境中执行:ddev restart重启后再进入容器验证解析功能。
配置DDEV全局DNS参数
编辑WSL2中的DDEV全局配置文件~/.ddev/global_config.yaml,添加固定DNS服务器:nameservers: - 8.8.8.8 - 8.8.4.4保存后执行
ddev restart使配置生效。修复WSL2宿主DNS配置
在WSL2中检查宿主DNS设置:cat /etc/resolv.conf若DNS异常,手动设置并锁定配置:
sudo bash -c 'echo "nameserver 8.8.8.8" > /etc/resolv.conf' sudo chattr +i /etc/resolv.conf之后重启WSL2和DDEV容器。
检查Windows防火墙规则
临时关闭Windows防火墙,测试容器内解析是否恢复。若正常,需为DDEV相关进程添加允许网络请求的防火墙规则。
内容的提问来源于stack exchange,提问作者Grevil
相关产品推荐
相关产品推荐

