docker pull镜像报错解决

本文介绍在Windows10环境下,于虚拟机VM中运行Docker时遇到的镜像拉取超时错误及解决方法。主要问题源于默认使用国外仓库导致DNS解析超时或http握手失败。解决方案包括修改VM默认DNS、使用国内镜像仓库、修改Docker配置文件指向国内地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

描述:在win10下安装VM,在VM里运行docker,使用docker pull拉取镜像时报错
  1. Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

    原因:使用docker pull 命令拉取镜像时,如果不添加额外的信息如docker pull nginx,则会默认镜像拉取地址为国外仓库,导致DNS解析超时。
    解决办法:

    • )修改VM默认的DNS为8.8.8.8
    • )使用国内的镜像仓库拉取镜像
  2. Trying to pull repository docker.io/library/nginx ... Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout

    原因:也是因为使用国外地址,导致http握手失败。
    解决办法:

    • )每次拉取镜像时都手动指定国内仓库地址docker pull registry.docker-cn.com/library/nginx
    • )修改 /etc/docker/daemon.json 文件(把默认仓库地址修改为国内地址,省去每次都手动输入)
      vim /etc/docker/daemon.json -> 写入
      { "registry-mirrors": ["https://registry.docker-cn.com"] }
      最后,重启docker即可systemctl daemon-reload + systemctl restart docker
  3. 吐槽一下优快云的markdown是真心难用,很多语法都不支持。

### Docker Pull Registry 报错解决方案 当从私有仓库拉取镜像时遇到 `unexpected EOF` 错误,可能的原因之一是网络连接不稳定或注册表服务出现问题。针对此类问题,建议采取以下措施: 对于因网络波动引起的短暂性错误,可以通过重启负责存储和分发镜像的Registry容器来解决问题[^2]: ```bash docker stop <容器ID> docker start <容器ID> ``` 如果上述方法未能有效解决,则可能是由于Docker客户端与服务器之间的协议不匹配所造成。此时应考虑更新至最新稳定版Docker环境以获得更好的兼容性和安全性支持[^3]: 卸载旧版本Docker组件: ```bash sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine ``` 安装官方推荐配置的新版本Docker套件: ```bash sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.io ``` 完成新版本部署后记得启动并设置开机自启Docker服务: ```bash sudo systemctl start docker sudo systemctl enable docker ``` 最后验证当前使用的Docker版本号确保升级成功: ```bash docker --version ``` 另外一种情况是从私有库获取资源时缺少必要的认证信息也会引发类似的异常提示。因此,在执行pull操作前务必确认已通过正确的凭证完成了登录动作。若之前有过成功的登陆记录但仍无法正常工作,可尝试先登出再重新输入账号密码进行身份验证[^1]。 ```bash docker logout docker login ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值