无法拉取Docker镜像报错求助:Windows 10+Docker Desktop环境修复
解决Docker无法连接registry-1.docker.io的问题
问题场景
执行命令:
docker run -d -p 80:80 docker/getting-started
出现报错:
Unable to find image 'docker/getting-started:latest' locally docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": unable to connect to 34.205.13.154:443. Do you need an HTTP proxy?.
环境为全新安装的Windows 10 Enterprise Version 21H2 + Docker Desktop 4.12.0(85629)
解决步骤
验证基础网络连通性
打开CMD或PowerShell,执行ping registry-1.docker.io和telnet 34.205.13.154 443,确认目标IP和端口是否能正常连通。如果telnet不通,说明网络层面存在阻断。配置Docker代理(若环境需代理)
- 打开Docker Desktop设置,进入
Resources->Proxies - 勾选
Manual proxy configuration - 填入HTTP/HTTPS代理地址(格式如
http://proxy.example.com:8080),若代理需认证,勾选Use proxy authentication并输入账号密码 - 点击
Apply & Restart重启Docker
- 打开Docker Desktop设置,进入
临时关闭防火墙/杀毒软件测试
暂时关闭Windows Defender防火墙(控制面板→系统和安全→Windows Defender防火墙→启用或关闭Windows Defender防火墙)及第三方杀毒软件,重新执行Docker命令。若恢复正常,需在防火墙中添加Docker出站规则,允许Docker Desktop访问外部网络。重置Docker网络配置
- 打开Docker Desktop设置,进入
Troubleshoot - 点击
Reset to factory defaults(注意:此操作会清除本地镜像、容器等数据,提前备份重要内容) - 重启Docker后再次尝试拉取镜像
- 打开Docker Desktop设置,进入
更换DNS服务器
- 右键任务栏网络图标,选择
打开网络和Internet设置 - 点击
更改适配器选项,找到当前网络连接右键选择属性 - 双击
Internet协议版本4(TCP/IPv4),选择使用下面的DNS服务器地址,填入8.8.8.8或1.1.1.1 - 确认设置后刷新网络,重新执行命令
- 右键任务栏网络图标,选择
备选:从国内镜像源拉取
若上述方法无效,可尝试使用国内镜像源拉取:docker run -d -p 80:80 registry.cn-hangzhou.aliyuncs.com/docker/getting-started:latest
内容的提问来源于stack exchange,提问作者Ashwin
相关产品推荐
相关产品推荐

