当前位置: 首页 > article >正文

如何解决docker镜像下载失败问题

经常用docker的朋友都知道,docker hub的镜像仓库经常访问不通

root@iZwz97kfjnf78copv1ae65Z:~# docker pull ubuntu:18.04
Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

网上有一些方式和教程,比如使用阿里云的镜像仓库,但是这些镜像仓库有约束条件,需要在他们云服务器内才能用。
除了dockerhub的镜像之外,搭建k8s环境需要很多的非dockerhub的镜像,这些同样也存在pull失败的问题。
这篇文章将教你如何使用比扬云的Docker镜像加速服务来免费的解决这些问题。

如何使用

使用方式很简单,不需要注册,也不需要付费,直接打开比扬云/Docker镜像加速,上面有详细的步骤,我这里也简单贴一下。

我们会看到官网上提供了常用镜像源的加速链接,每个镜像源都有专属的加速地址,比如我们dockerhub的官方镜像源的地址是registry-1.docker.io,那么我们会为其生成一个加速地址,比如这里的https://68a1j8mei9xi-registry.1.mirror.gipa.link:9043,你可以认为两个地址是等价的。
在这里插入图片描述
接下来需要调整Docker的配置,把我们的加速地址配进去。

第一步: 查看/etc/docker/daemon.json 文件是否存在,如果不存在需要手动创建

第二步: 复制下面配置,并粘贴进/etc/docker/daemon.json文件


  {
    "registry-mirrors": [
       "https://68a1j8mei9xi-gcr.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-k8s-gcr.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-k8s-registry.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-quay.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-registry.1.mirror.gipa.link:9043"
    ],
    "insecure-registries": [
       "https://68a1j8mei9xi-gcr.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-k8s-gcr.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-k8s-registry.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-quay.1.mirror.gipa.link:9043",
       "https://68a1j8mei9xi-registry.1.mirror.gipa.link:9043"
    ]
  }

这里我们配置了很多mirror,如果你不需要这么多,可以只配置dockerhub官方的即可

  {
    "registry-mirrors": [
       "https://68a1j8mei9xi-registry.1.mirror.gipa.link:9043"
    ],
    "insecure-registries": [
       "https://68a1j8mei9xi-registry.1.mirror.gipa.link:9043"
    ]
  }

最后一步: 只需要使用systemctl restart docker命令重启一下Docker即可生效。

测试的方式很简单,用docker pull一个镜像测试就可以,比如docker pull ubuntu:18.04
在这里插入图片描述
针对k8s需要用到的镜像,以coredns:v1.8.6为例子,操作会有些许不一样,但是不会有太复杂的地方。

首先docker pull k8s.gcr.io的加速地址将镜像pull下来

docker pull 68a1j8mei9xi-k8s-gcr.1.mirror.gipa.link:9043/coredns/coredns:v1.8.6

然后重新将这个镜像打成k8s.gcr.io/coredns/coredns:v1.8.6

docker tag 68a1j8mei9xi-k8s-gcr.1.mirror.gipa.link:9043/coredns/coredns:v1.8.6 k8s.gcr.io/coredns/coredns:v1.8.6

这样本地就会有k8s.gcr.io/coredns的镜像了。

root@iZwz97kfjnf78copv1ae65Z:~# docker images |grep coredns
68a1j8mei9xi-k8s-gcr.1.mirror.gipa.link:9043/coredns/coredns   v1.8.6                a4ca41631cc7   3 years ago     46.8MB
k8s.gcr.io/coredns/coredns                                     v1.8.6                a4ca41631cc7   3 years ago     46.8MB

通过这种方式就能完美解决dockerhub,k8s访问不通的问题。

但是有一点需要注意的是,官网披露的镜像地址是会更新的,你可以:

  • 需要的时候再打开官网去更换新的镜像加速地址
  • 注册用户,他们就会为你生成一个固定的加速链接,这个链接就是固定的,不用担心官网变更链接无法使用。
    希望通过这种方式,能给工程师朋友们发一些福利。

http://www.kler.cn/a/374816.html

相关文章:

  • Mysql高级部分总结(二)
  • C/C++基础错题归纳
  • UG NX二次开发(C#)-机电概念设计-UIStyler中selection块选择信号等对象的过滤器设置
  • docker安装nginx,docker部署vue前端,以及docker部署java的jar部署
  • oracle: create new database
  • 大数据、人工智能、云计算、物联网、区块链序言【大数据导论】
  • nfs作业
  • Docker | 容器数据卷在docker中的角色:持久化存储
  • WebSocket简单使用
  • Python实现图像(边缘)锐化:梯度锐化、Roberts 算子、Laplace算子、Sobel算子的详细方法
  • 【PythonWeb开发】Flask-RESTful字段格式化
  • C语言常见进制 (二进制、八进制、十进制、十六进制)详解
  • uniapp使用echart
  • Litctf-web
  • Docker(二):Docker的基本使用
  • 从0攒一个分布大数据/人工智能/数据库 处理引擎
  • 躺平成长-下一个更新的数据(躺平成长数据显示核心)
  • 【计算机网络 - 基础问题】每日 3 题(六十)
  • Make a Windows service publicly accessible
  • IDEA控制台报错(org.springframework.http.converter.HttpMessageNotWritableException)
  • 信息论与熵information and entropy
  • Linux:线程池
  • ADT和ADT接口
  • 【Fargo】21:rtcp rr 问答
  • 手机玩亚托莉:我挚爱的时光!手机推gal、躺床玩漫改gal教程
  • 龙迅#LT6211适用于HDMI转4PORT LVDS,分辨率高达4K60HZ,可提供技术支持!