众所周知,最近的Docker官方镜像仓库Dockerhub可能抽风了。因为我自己网络情况还算良好一直没发现,直到前几天陆续有多位小伙伴在评论区讨论这个事情,我尝试将网络恢复正常,果然不出所料:
🔺Dockerhub抽风了!
🔺然后尝试使用ping工具检测,我心安了,因为并不只有我一个人是这种情况,全国都是一片大红啊~~
看到这个情况,可能很多小伙伴都担心,以后我们难道就用不了Docker了吗?
非也!我其实在前两篇文章已经回复过这个问题。我们目前的网络只是打不开Dockerhub的官方网站,但是里面的镜像还是正常拉取的。
当我以为我说的这句话没毛病的时候,我昨天在朋友家里玩NAS,用她家里的移动网络拉取镜像的时候,十几兆的镜像拉取了10几分钟还没完成,最后竟然还失败了,当我使用其它网络的时候,3秒钟全部搞定!
结论就是:我给小伙伴们的回复草率了!这脸打的有点快啊~~~~
既然这样,我还是给小伙伴们总结一下,目前我找到的可以解决这个问题的方法吧!
方案一:使用MO法
这种方案可以说是万能大法,通过它没有搞不定的。具体操作如下:
……此处省略一万字……
方案二:先拉取镜像在部署容器
很多时候我们在SSH终端直接通过容器的Docker run命令来搭建的时候,怎么都没有速度,主要就是卡在拉取镜像这一步。
但是我们可以先不要直接使用Docker run命令,而是先通过NAS的Docker功能单独的拉取镜像到本地并保存,在过去使用Docker run命令来搭建,这个容器就能秒完成。这个方案我试过不管是在群晖还是威联通都非常有用,小伙伴如果碰到拉取镜像失败的问题可以试试。
举个例子,我这里以威联通NAS来演示:
🔺比如我这里直接使用Docker run命令搭建【linuxserver/librespeed】这个很出名的局域网测速容器,在拉取镜像的时候几乎没有速度,5分钟了还是上图中的样子。可以看到镜像完全就拉不动(没速度啊)。
🔺但是我使用威联通的Container Station先将这个镜像下载到本地(操作方法:映像–提取–输入完整的镜像名称–提取)
🔺可以看到镜像下载速度非常的快,不到5秒钟就下载完成。
🔺在镜像列表中已经看到这个镜像了,但是是“未使用”状态,因为我们只是下载了镜像,还没有搭建容器。
🔺然后回到SSH终端,再次输入Docker run部署命令,可以看到系统直接跳过拉取镜像的步骤,瞬间完成了这个容器的搭建,用时真的不到两秒钟,非常的快。
🔺搭建结果也是没有任何问题的。
方案三:使用国内镜像加速
这个方案说实话比较鸡肋,有的人反映非常的快,有的人设置好之后没什么变化,所以说只能自己尝试了!
然后我这里换作群晖最新的Container Manager(Docker)来演示吧!
🔺你以为我打开的注册表是这样的吗?
🔺它其实是这样的。我相信这种情况的小伙伴肯定非常多对吧?所以这个时候我们只能通过ssh终端连接的方式来部署。问题是直接docker pull 拉取速度一样很慢,或者根本没速度,怎么办?
🔺这里建议通过新增国内容器镜像仓库来提高下载速度。方法是:点击注册表–设置,选中Docker Hub,点击编辑,然后在注册表镜像里面新增国内容器镜像仓库地址即可,最后点击应用。
这里顺便分享一下其它网友列出来的国内容器镜像仓库地址:
阿里云(杭州) https://registry.cn-hangzhou.aliyuncs.com
阿里云(深圳) https://registry.cn-shenzhen.aliyuncs.com
阿里云(广州) https://registry.cn-guangzhou.aliyuncs.com
阿里云(成都) https://registry.cn-chengdu.aliyuncs.com
腾讯云 https://mirror.ccs.tencentyun.com
微软云 https://dockerhub.azk8s.com
网易 https://hub-mirror.c.163.com
上海交通大学 https://mirror.sjtu.edu.cn/docs/docker-registry
南京大学 https://docker.nju.edu.cn
道客 DaoCloud https://f1361db2.m.daocloud.io
🔺我之后试着在群晖上搭建了前面说的【linuxserver/librespeed】容器,拉取速度确实有提升,差不多20秒种就搞定了!
🔺容器显示也是正常的。
方案四:使用Docker Proxy 镜像加速
这个从字面上就能理解它的意思对吧?它其实是另外一种网络访问方式,简单理解就是Docker镜像的代理服务,我们如果碰到docker pull拉取没速度的时候,就可以使用这种方案,可以说是直接满速起飞!
这里推荐我常用的一个代理服务网站,除了支持 Docker Hub,GitHub, Google, k8s, Quay等镜像仓库也都是支持的,非常的不错!
代理服务网站:https://dockerproxy.com/
🔺使用起来非常简单,直接输入我们需要的镜像名称(注意还是需要完整的名称),然后点击“获取命令”,下面就会显示这个代理网站给出的docker pull命令,我们直接使用就可以了!
🔺尝试使用它的命令拉取镜像,果然啥也不用设置,速度非常的快!
🔺但是需要说明的是,因为镜像是从这个代理软件的镜像仓库拉取过来的,所以名称其实显示的是它自己的仓库名,我们还需要通过它给出的“重命名镜像”和“删除代理镜像”两个命令继续操作,我们得到的才是我们可以直接使用的正常镜像。
🔺来到NAS中的镜像列表,可以看到这个镜像已经存在,并且显示正常,说明我们拉取成功。
好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,我会经常给大家分享各类有意思的软件和免费干货,咱们下期再见!谢谢大家~
原文始发于微信公众号(Stark324):Docker官方镜像仓库抽风难道就不能愉快的玩耍?分享目前可行的四种Docker镜像拉取方案
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/229754.html