docker换源不生效的原因和方案

标题背景

网上一大堆教程告诉你如何换源,怎么执行命令,但发现换源之后,docker pull 仍然拉不下来。云里雾里不知道什么原因

历史操作

  1. 以阿里云镜像加速为例,它提供了个人维度的加速链接,在这里可以看到 容器镜像服务
  2. 按照上面的操作方式,vim /etc/docker/daemon.json 将个人加速链接配置进去,重启服务
  3. 发现 docker pull golang:1.22-alpine 依然报错,说明没有走到加速镜像
Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
  1. 怀疑缓存导致,清理缓存 docker system prune -a
  2. 依然无效后,陷入死锁,在尝试更换了几个源之后没有明显解决。

原因

因为一些历史原因,从24年6月,docker 官方收紧了cn地区的镜像服务,同时,一些自建的镜像加速公有云也并没有完全收录所有镜像开放使用,以上面的阿里云链接为例
在这里插入图片描述
它引导用户使用制品中心中的镜像,但那里的镜像种类和版本,与docker官方的几乎不相同,例如想要获取 golang 镜像,官方的是类似 golang:1.22-alpine ,但制品中心最新的是 FROM anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/golang:1.19.4-8.6 看到落后了好几个版本。但这个确实能很快速的拉取下来

最终方案

由上可知,根本原因还是源本身的问题,还是需要找到可靠稳定的国内加速源链接,这里找到一个docker服务状态监控网站,找到镜像加速一栏,将其加入到/etc/docker/daemon.json后,重新尝试发现拉取镜像加速的概率大了很多
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值