Windows环境下Python Docker容器中pip无法安装依赖求助
解决Docker容器DNS解析故障的方法
问题诊断
从测试结果可明确:
- 能ping通
8.8.8.8,说明容器与外部网络的连通性正常 - 无法解析
wikipedia.com、pip升级时出现getaddrinfo failed,核心问题是Docker容器的DNS配置异常,导致域名解析失败
调整Docker Desktop网络设置的步骤
打开Docker Desktop设置
右键任务栏中的Docker图标,选择「设置」进入网络配置页面
在左侧菜单中选择「资源」→「网络」自定义DNS服务器
- 找到「DNS服务器」选项,切换为「手动」模式
- 添加可靠的公共DNS服务器,例如:
8.8.8.8(Google公共DNS)1.1.1.1(Cloudflare公共DNS)
- 点击「应用并重启」,使设置生效
验证修复效果
容器重启后,执行以下命令测试:ping wikipedia.com python -m pip install --upgrade pip
额外排查点(若上述步骤无效)
- 检查宿主机DNS配置:在宿主机CMD中执行
nslookup wikipedia.com,若宿主机也无法解析,需先修复宿主机DNS设置 - 确认容器网络模式:使用自定义网络时,检查网络的DNS配置;使用默认桥接网络时,确保Docker未自动获取错误的DNS服务器
- 临时关闭宿主机防火墙/安全软件,排查是否是防火墙拦截了DNS请求
内容的提问来源于stack exchange,提问作者YukiteruNAMAANA
相关产品推荐
相关产品推荐

