这两天有网友反馈:群晖的ContainerManager无论是在套件界面安装容器还是使用docker pull命令拉取容器均拉取失败,昨晚看到了这条消息。
这是没有添加镜像服务器之前,下载容器进度会一直显示0%;
现阶段,想解决Docker国内无法访问的办法,主要有两种:
一、第一种:挂代理
如果你使用的网络环境有代理服务器(科学出国环境),可以参考【这个教程】进行设置。
二、如果你使用的网络环境没有代理服务器(科学出国环境),可以使用“第二种:添加镜像服务器”的办法(两种添加添加镜像服务器的方法,任意选择一个来做就行了):
A、添加镜像服务器的方法一
1、打开ContainerManager,注册表,设置;
4、把以下镜像服务器的地址复制粘贴进去,可只写一个,也可以添加若干个:
【2024年11月1日更新镜像服务器列表】
https://docker.registry.cyou
https://docker-cf.registry.cyou
https://dockerpull.com
https://dockerproxy.cn
https://docker.1panel.live
https://hub.rat.dev
https://dhub.kubesre.xyz
https://docker.hlyun.org
https://docker.kejilion.pro
https://registry.dockermirror.com
https://docker.chenby.cn
https://ccr.ccs.tencentyun.com
https://hub.littlediary.cn
https://hub.firefly.store
https://docker.nat.tf
https://hub.crdz.gq
https://noohub.ru
https://docker.nastool.de
https://hub.docker-ttc.xyz
https://freeno.xyz
https://docker.hpcloud.cloud
https://dislabaiot.xyz
https://ginger20240704.asia
https://doublezonline.cloud
https://dockerproxy.com
B、添加镜像服务器的方法二
1、打开群晖控制面板,任务计划,新增,触发的任务,用户定义的脚本;
2、在“常规”标签中,任务名称写ContainerManager,用户账号需要改成root,“已启动”处不用打勾;
3、在“任务设置”标签中,把下面的内容复制到用户定义的脚本中(原理是给当前群晖ContainerManager套件添加四个docker镜像服务器地址,这四个服务器均架设在俄罗斯),确定;
synopkgctl stop ContainerManager
cp -f /var/packages/ContainerManager/etc/dockerd.json /var/packages/ContainerManager/etc/dockerd.json.bak
sed -i 's|\[\]|["https://docker.m.daocloud.io","https://huecker.io","https://dockerhub.timeweb.cloud", "https://noohub.ru"]|g' /var/packages/ContainerManager/etc/dockerd.json
synopkgctl start ContainerManager
6、找到刚才保存的“ContainerManager”任务计划,点鼠标右键,运行;
8、运行这个任务的时候,ContainerManager套件会自动停止,然后过几秒钟ContainerManager套件会自动重新启用,当看到ContainerManager套件恢复启用的时候,把任务计划中的“ContainerManager”点鼠标右键,删除;
三、使用的效果
1、到注册表重新下载docker容器试试,发现已经可以正常下载了,只不过下载速度有点慢,耐心等待即可;
四、其他说明
1、上述添加镜像服务器的办法在群晖DSM7.21系统中测试成功;
2、如果你用的不是这个系统,可以自行在你的系统中添加镜像服务器,镜像服务器地址是:
【2024年11月1日更新镜像服务器列表】
https://docker.registry.cyou
https://docker-cf.registry.cyou
https://dockerpull.com
https://dockerproxy.cn
https://docker.1panel.live
https://hub.rat.dev
https://dhub.kubesre.xyz
https://docker.hlyun.org
https://docker.kejilion.pro
https://registry.dockermirror.com
https://docker.chenby.cn
https://ccr.ccs.tencentyun.com
https://hub.littlediary.cn
https://hub.firefly.store
https://docker.nat.tf
https://hub.crdz.gq
https://noohub.ru
https://docker.nastool.de
https://hub.docker-ttc.xyz
https://freeno.xyz
https://docker.hpcloud.cloud
https://dislabaiot.xyz
https://ginger20240704.asia
https://doublezonline.cloud
https://dockerproxy.com
3、除了群晖支持以外,理论上所有使用docker的环境,包括不仅于:群晖、威联通、Linux等等。
2024年6月16日更新:
鉴于GFW进一步的增高,如果你的网络没有代理环境、Docker也没有添加加速地址的情况下,注册表不显示并且用命令拉取也会报错的哦!如果没有代理环境只添加了加速地址,注册表依然不会显示,但已经可以用命令拉取了。如果想让注册表能正常显示,只能挂代理。
由于上述镜像服务器地址并非博主搭建,所以时效性没有保障,有条件的请参考《利用CloudFlare搭建一个专属自己的Docker镜像加速和代理工具》自行搭建自己专属的docker加速地址。