docker拉取失败,更换docker的源方式

 更新时间:2025年11月08日 15:14:12   作者:return(b,a%b);  
文章讨论了Docker客户端访问DockerHub或其他注册中心时遇到的错误,并提供了五种解决方法,包括检查网络、docker状态、更换源、重载和重启Docker服务以及重新执行docker pull hello-world命令

docker拉取失败,更换docker的源

docker pull hello-world时报错
hh@hh-virtual-machine:~$ docker pull hello-world
Using default tag: latest
Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded


hh@hh-virtual-machine:~$ docker pull registry.cn-hangzhou.aliyuncs.com/library/ubuntu:22.04
Error response from daemon: pull access denied for registry.cn-hangzhou.aliyuncs.com/library/ubuntu, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

这个错误表明Docker客户端尝试访问Docker Hub或其他Docker注册中心时出现了问题。

具体来说,是在尝试获取注册中心API的响应时遇到了错误。

可能的原因包括网络问题、认证问题、注册中心URL不正确或者注册中心服务本身不可用。

解决方法

检查网络

hh@hh-virtual-machine:~$ ping www.baidu.com
PING www.wshifen.com (119.63.197.151) 56(84) bytes of data.
64 bytes from 119.63.197.151 (119.63.197.151): icmp_seq=1 ttl=49 time=161 ms
64 bytes from 119.63.197.151 (119.63.197.151): icmp_seq=2 ttl=49 time=164 ms
64 bytes from 119.63.197.151 (119.63.197.151): icmp_seq=3 ttl=49 time=160 ms
^C
--- www.wshifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 160.431/161.615/163.762/1.520 ms

检查docker状态

hh@hh-virtual-machine:~$ systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2025-11-07 14:02:48 CST; 17min ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 1335 (dockerd)
      Tasks: 16
     Memory: 122.3M
        CPU: 1.526s
     CGroup: /system.slice/docker.service
             └─1335 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

11月 07 14:18:15 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:15.098431463+08:00" level=error msg="Handler for POST /v1.51/images/create returned error: Get \"https://hub-mirror.c.163.com/v2/\": dial tcp: lookup hub-mirror.c.163.com on 127>
11月 07 14:18:36 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:36.217686088+08:00" level=warning msg="Error getting v2 registry: Get \"https://docker.mirrors.ustc.edu.cn/v2/\": dial tcp: lookup docker.mirrors.ustc.edu.cn on 127.0.0.53:53: n>
11月 07 14:18:36 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:36.217749899+08:00" level=info msg="Attempting next endpoint for pull after error: Get \"https://docker.mirrors.ustc.edu.cn/v2/\": dial tcp: lookup docker.mirrors.ustc.edu.cn on>
11月 07 14:18:36 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:36.269239801+08:00" level=warning msg="Error getting v2 registry: Get \"https://hub-mirror.c.163.com/v2/\": dial tcp: lookup hub-mirror.c.163.com on 127.0.0.53:53: no such host"
11月 07 14:18:36 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:36.269318729+08:00" level=info msg="Attempting next endpoint for pull after error: Get \"https://hub-mirror.c.163.com/v2/\": dial tcp: lookup hub-mirror.c.163.com on 127.0.0.53:>
11月 07 14:18:51 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:51.271108112+08:00" level=warning msg="Error getting v2 registry: Get \"https://registry.docker-cn.com/v2/\": net/http: request canceled while waiting for connection (Client.Tim>
11月 07 14:18:51 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:18:51.271180286+08:00" level=info msg="Attempting next endpoint for pull after error: Get \"https://registry.docker-cn.com/v2/\": net/http: request canceled while waiting for conne>
11月 07 14:19:06 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:19:06.271769052+08:00" level=warning msg="Error getting v2 registry: Get \"https://registry-1.docker.io/v2/\": context deadline exceeded"
11月 07 14:19:06 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:19:06.271862946+08:00" level=info msg="Attempting next endpoint for pull after error: Get \"https://registry-1.docker.io/v2/\": context deadline exceeded"
11月 07 14:19:06 hh-virtual-machine dockerd[1335]: time="2025-11-07T14:19:06.273537816+08:00" level=error msg="Handler for POST /v1.51/images/create returned error: Get \"https://registry-1.docker.io/v2/\": context deadline exceeded"

更换源

systemctl status docker
sudo mkdir -p /etc/docker
vim /etc/docker/daemon.json  
添加:
{
  "registry-mirrors" : ["https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://dockerproxy.com",
"https://gst6rzl9.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"http://mirrors.ustc.edu.cn/",
"https://mirrors.tuna.tsinghua.edu.cn/",
"http://mirrors.sohu.com/"  
],
 "insecure-registries" : [
    "registry.docker-cn.com",
    "docker.mirrors.ustc.edu.cn"
    ],
"debug": true,
"experimental": false
}

重载和重启dockers服务

sudo systemctl daemon-reload
sudo systemctl restart docker
docker info

重新执行

docker pull hello-world

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • docker启动Nginx的两种方式小结

    docker启动Nginx的两种方式小结

    本文介绍了两种获取Nginx镜像的方式:直接从DockerHub拉取和通过Dockerfile构建,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-10-10
  • Docker安装运行apache2服务器做图片服务器的方法

    Docker安装运行apache2服务器做图片服务器的方法

    这篇文章主要介绍了Docker安装运行apache2服务器做图片服务器的方法,需要的朋友可以参考下
    2017-06-06
  • docker中psql数据库备份与恢复详解

    docker中psql数据库备份与恢复详解

    在本篇文章里小编给大家整理的是关于docker中psql数据库基本操作内容,需要的朋友们可以学习参考下。
    2020-02-02
  • 从主机获取Docker容器IP地址的四种方法

    从主机获取Docker容器IP地址的四种方法

    在使用Docker进行开发和部署时,经常需要从主机获取容器的IP地址,以进行代码部署、容器配置或与容器进行通信等操作,本文介绍多种从主机获取Docker容器IP地址的方法,需要的朋友可以参考下
    2025-06-06
  • IDEA 配置Docker的过程

    IDEA 配置Docker的过程

    这篇文章主要介绍了IDEA 配置Docker的过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • 一文教会你如何高效地搭建Docker私有仓库

    一文教会你如何高效地搭建Docker私有仓库

    Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的,这篇文章主要介绍了如何高效地搭建Docker私有仓库的相关资料,需要的朋友可以参考下
    2022-08-08
  • Docker深度清除镜像缓存overlay2的实现

    Docker深度清除镜像缓存overlay2的实现

    维清理镜像是通过命令 docker rm i 删除镜像的,但是这条命令不会删除docker build命令产生的缓存文件,本文主要介绍了Docker深度清除镜像缓存overlay2的实现,感兴趣的可以了解一下
    2023-12-12
  • Docker端口映射的完全指南

    Docker端口映射的完全指南

    端口映射指的是将容器的端口映射到主机的端口,使得外部用户能够通过主机的IP地址和端口访问容器内运行的服务,本文给大家介绍了Docker端口映射的完全指南,需要的朋友可以参考下
    2025-08-08
  • 解决docker加载新的镜像后repository和tag名称都为none的问题

    解决docker加载新的镜像后repository和tag名称都为none的问题

    这篇文章主要介绍了解决docker加载新的镜像后repository和tag名称都为none的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker安装RocketMQ的实现步骤

    docker安装RocketMQ的实现步骤

    本文主要介绍了docker安装RocketMQ的实现步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11

最新评论