目录
我的经历(大家可以跳过)解决办法更改国内镜像源更改DNS使用docker-drag工具docker for windows
我的经历(大家可以跳过)
在虚拟机上运行docker时,使用docker pull时速度十分的慢。但是我之前使用docker pull时速度挺快的,不知道发生了什么导致速度如此的慢。当时在学习《商品甄选》,所需要的资料老师都提供好了,所以并未深入思考这个问题。
在《商品甄选》的最后一部分,需要安装harbor,然而在pull时,pull失败,尝试pull其他image,仍然pull不下来。并且在pull时,显示
pulling fs layer
我上网搜索了解到出现这个主要是因为国家把docker国外镜像hub封掉了,导致镜像pull不下来。可是在此之前,我已经配置了docker镜像源为阿里云镜像加速器,所以我不知道是什么原因,折磨了我许久。
那既然如此,山不过来我便过去呗。我打算从另一种角度去解决问题,pull不了,我便load。我计划从其他方式下载下来tar包,我试过github上的很多方式,然而全部不行。
在我尝试过很多方法之后,甚至重装docker都不行,我突然灵光一闪,说不定是虚拟机的问题。
在目光转移到虚拟机之后,我想到之前为了固定ip地址进行的一系列操作,可能是那一些操作影响到了虚拟机的网络,所以导致pull不下来。所以我立马上网搜查,果然找到了这方面的文章,有人和我一样,也是更改国内镜像源也不行,他的那篇帖子里提到在Windows上安装docker,所以我找到了解决办法。
解决办法
更改国内镜像源
使用下列代码vim /etc/docker/daemon.json
编辑里面的配置 { "registry-mirrors": [ "https://hub-mirror.c.163.com", "https://mirror.baidubce.com" ]}
使用阿里云、华为云、中科院等等都可以。
加载配置和重启dockersystemctl daemon-reload systemctl restart docker
更改DNS
有一篇热门帖子是说DNS的问题,详情可以看Docker拉取镜像过慢或卡死的坑!!!(亲测有效)
修改etc/resolv.conf文件vim /etc/resolv.conf
修改114.114.114.114为阿里云的DNS(223.5.5.5)重启虚拟机 reboot
使用docker-drag工具
docker-drag是github上一个开源工具,该工具构建http请求直接下载tar包,上传至虚拟机后可使用load加载镜像。github上详细说明了该如何使用。
传送门:
docker-drag
但是该方法似乎已经失效了,我使用的时候失败了,大家可以去看看。
docker for windows
在本地的操作系统上下载docker,而不是使用虚拟机。
我的操作系统是Windows,所以我下载了docker for windows。具体怎么下载,网上有大量的帖子说明,各位自行百度。
在本地使用docker pull拉取镜像,以nacos为例docker pull nacos/nacos-server:latest
保存为tar包 docker save -o nacos-server.tar nacos/nacos-server:latest
上传至虚拟机,加载镜像。 docker load -i nacos-server.tar
这样就可以忽视虚拟机网络的问题了。