docker 已经配置了国内镜像源,但是拉取镜像速度还是很慢(gcr.io、quay.io、ghcr.io)

前言

国内用户在使用 docker 时,想必都遇到过镜像拉取慢的问题,那是因为 docker 默认指向的镜像下载地址是 https://hub.docker.com,服务器在国外。

网上有关配置 docker 国内镜像源的教程很多,像 腾讯、阿里、网易 等等都会提供镜像仓库,自行配置下即可。

一般配置完镜像源后,拉取镜像都会快不少,但是目前我配置了镜像源了,拉取镜像速度还是非常的慢。最终发现是配置的镜像源没有对应的镜像仓库(ghcr.io)的资源。

我的解决方式

由于我需要拉取的镜像使用者比较少,国内的源都没有资源,最终还是找了一台能上外网的机器,拉取镜像后保存下来再转移到目标机器。

使用了 dockersave load 转移。

shell 复制代码
# 能上外网的机器拉取并保存
docker pull 镜像名:tag
docker save 镜像名:tag > 1.tar

# 目标机器
docker load < 1.tar

这里提一下,若是没有机器能够上外网,可以试试 DaoCloud ,不过我试了貌似没什么用。

镜像仓库、镜像源

首先需要了解下镜像仓库和镜像源

名词 解释
镜像仓库 镜像的存放地址,类似 docker.io, ghcr.io
镜像源 国内提供的加速器,例如网易的 http://hub-mirror.c.163.com

常见的镜像仓库

  • docker.ioDocker Hub 官方镜像仓库,也是 Docker 默认的仓库
  • gcr.iok8s.gcr.io:谷歌镜像仓库
  • quay.ioRed Hat 镜像仓库
  • ghcr.ioGitHub 镜像仓库

常见的国内镜像源

  • 中国区官方镜像: https://registry.docker-cn.com
  • 清华源: https://docker.mirrors.ustc.edu.cn
  • 阿里源: https://cr.console.aliyun.com
  • 腾讯源: https://mirror.ccs.tencentyun.com
  • 网易源: http://hub-mirror.c.163.com

这篇文章 的图很好,下图是直接拿过来的。

如何配置镜像源

这里提一下如何配置镜像源吧,记得修改完成后需重启 docker

linux(非 Docker Desktop)

shell 复制代码
# 修改 daemon.json,若是没有该文件则创建
sudo vi /etc/docker/daemon.json
# 添加 registry-mirrors 
{
 "registry-mirrors": ["https://registry.docker-cn.com","https://hub-mirror.c.163.com","https://docker.m.daocloud.io"]
}

Docker Desktop (windows/mac/linux)

打开 Docker Desktop 窗口,找到 设置 -> Docker Enginejson 中添加 registry-mirrors 数组即可。

总结

docker 拉取镜像慢,通常配置了国内镜像源后,速度可以得到极大的改善。

但若是配置了镜像源后,拉取镜像还是非常慢,那就需要自己想想办法搭个梯子直接从外网拉取镜像。

参考

相关推荐
zhujilisa1 小时前
k8s基础
云原生·容器·kubernetes
夏天是冰红茶1 小时前
使用Docker将PyQt深度学习项目打包成镜像
运维·docker·容器
龙门吹雪2 小时前
Docker 安装 canal 详细步骤
运维·docker·容器·canal·mysql binlog 日志·增量数据订阅消费
杨浦老苏3 小时前
文件共享应用程序Palmr
docker·群晖·网盘
小白不想白a4 小时前
【Ansible】使用ansible部署k8s集群前的准备工作脚本
容器·kubernetes·ansible
啥也不会的小胡4 小时前
深入理解 Docker:从入门到实践
docker·容器
Lin_Aries_042111 小时前
容器化简单的 Java 应用程序
java·linux·运维·开发语言·docker·容器·rpc
人逝花落空.13 小时前
docker容器的三大核心技术UnionFS(下)
运维·docker·容器
Insist75313 小时前
基于OpenEuler部署kafka消息队列
分布式·docker·kafka
程序猿费益洲14 小时前
Docker 网络详解:(一)Linux 网络虚拟化技术
linux·网络·docker·容器·云计算