# 镜像加速

参考 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors (opens new window)

# 镜像拉取失败问题

报错如下:

Error response from daemon: Get "https://index.docker.io/v1/search?q=java&n=25": dial tcp 108.160.165.141:443: i/o timeout

我遇到的问题是,能ping通外网,但就是dokcer search xxx不了,提示上面的错误,-_-||

网上各种方案尝试过,不大好使

采取使用特定的镜像名称和标签进行拉取,OK

例如,执行docker pull openjdk:8-jre-alpine来拉取一个具体的 Java 镜像,而不是使用模糊的搜索后再拉取。

解决方案:更换为当前(2025年底)国内还能正常使用的镜像加速器。

# 推荐配置(Ubuntu 系统)

  1. 编辑 Docker 配置文件的(如果文件不存在就新建):

    sudo mkdir -p /etc/docker
    sudo nano /etc/docker/daemon.json
    
  2. 写入以下内容(推荐多加几个源,提高可用性和速度,按优先级排序):

    {
      "registry-mirrors": [
        "https://docker.1ms.run",          // 毫秒镜像,速度快
        "https://docker.xuanyuan.me",      // 轩辕免费版
        "https://xuanyuan.cloud",          // 轩辕专业版(需注册,但更稳定)
        "https://docker.1panel.live",      // 1Panel 官方
        "https://proxy.1panel.live",
        "https://docker.m.daocloud.io",    // DaoCloud
        "https://docker.nju.edu.cn",       // 南京大学(部分可用)
        "https://docker.mirrors.sjtug.sjtu.edu.cn"  // 上海交大
      ]
    }
    

    你可以只选前 3-5 个,避免太多导致配置复杂。

  3. 保存退出后,重启 Docker 服务:

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    
  4. 验证配置是否生效:

    docker info | grep -i mirrors
    

    会显示你配置的镜像源列表。

  5. 测试拉取镜像:

    docker pull node:latest
    

    现在应该能正常下载了,速度也会明显更快。

# 如果还是不行(备用方案)

  • 临时单次拉取(不改配置,直接用加速前缀):

    docker pull docker.1ms.run/library/node:latest
    

    然后打 tag 成本地镜像:

    docker tag docker.1ms.run/library/node:latest node:latest
    
  • 阿里云个人加速器(最稳定,推荐生产用): 登录阿里云容器镜像服务 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors ,左侧“镜像加速器”里会给你生成专属地址(类似 https://xxxxxx.mirror.aliyuncs.com),复制进去 daemon.json 即可。

  • 如果你在虚拟机网络有问题,顺便检查下 DNS(不过这个错误主要是镜像源域名失效):

    sudo nano /etc/resolv.conf
    

    加一行:nameserver 8.8.8.8nameserver 114.114.114.114

配置好后,拉取 node:latest 之类的镜像就没问题了。现在国内很多老的镜像源都失效了,记得用上面这些新的。

Last Updated: 12/28/2025, 2:27:53 PM