13
2024
11
16:49:39

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用


由于某些原因,群晖的Container Manager中的注册表突然出现了打不开,无法正常加载的情况,提示:无法执行此操作,可能是因为网络连接不稳定或系统正忙。请稍后再试。

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

事情发生大约在2024年6月,因此,如果出现这个问题再去网上找资料,很多老方法都是告诉你替换国内云厂商或高校网站的docker镜像源,但是由于这些国内的docker镜像加速源几乎全部关闭了,或者仅限内部使用,因此这种方法已经没用了。

那如果还要正常使用Container Manager(Docker)还有什么办法呢?方法有几种:

方法一、让群里通过代理直接访问docker官方镜像

家里有软路由/旁路由,懂科学,把这下面几个docker的官方地址加入代理列表,让群晖通过代理直接访问docker的官方镜像源进行镜像拉取,懂得都懂,今天重点讲第二个方法。

docker.com

hub.docker.com

registry-1.docker.io

index.docker.io

registry.hub.docker.com

方法二、基于 Cloudflare Workers 部署Docker 镜像代理工具

第1步:注册个自己的域名(现在阿里云腾讯云便宜的很),此步骤省略。

第2步:将域名的托管到cloudflare

1、注册个cloudflare账号(如果有的话直接登录),访问CloudFlare面板https://dash.cloudflare.com/),点击右上角添加站点,在下面红框中输入你注册的域名,点击继续

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

2、选free免费版套餐,继续

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

3、得到cloudflare的DNS服务器地址

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

4、去到云厂商域名管理后台进行替换,以阿里云为例,进入域名控制台-域名列表,点击操作里的“管理”

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

5、选择DNS管理-DNS修改,点击修改DNS服务器,修改为上面cloudflare给的2个名称服务器地址(下图已经是修改以后的),页面上写需要24-48小时生效,其实不用,等个十几分钟就行了。

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

6、十几分钟以后,刷新cloudflare的主页,看你的域名状态是不是由“待处理的名称服务器更新”变成了“活动”,这时候你的域名就托管到了cloudflare。

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

第3步:在cloudflare中新建一个worker,私有化部署docker镜像源

1、左侧选择Workers和Pages-概述,点击右侧创建按钮。

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

2、点击创建Worker

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

3、取一个名字,点击部署

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

4、点击右上角编辑代码

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

5、删除worker.js文件中的全部默认代码,替换为下面链接中的代码,点击ctrl+s保存,点击右上角部署

代码内容:CF-Workers-docker.io/_worker.js

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

6、点击设置-添加路由-添加,选择自定义域

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

7、在域中输入一个你属于你域名的二级域名,比如你托管在cloudflare的域名是abc.com,你想添加的二级域名是dockerhub,则在输入框里输入:dockerhub.abc.com,点击右下角“添加域”按钮。

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

8、添加完以后在设置-域和路由中可以看到你添加的自定义域和网址,需要等几分钟进行解析生效

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

9、过几分钟以后,你通过https://加上你的自定义域的网址,即可成功访问你自己的docker镜像源网站。

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

第4步:在群中添加自己的镜像源

1、打开Container Manager,点击注册表,点击设置,选择新增

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

2、注册表名称随便写,注册表URL填写https://加上你的自定义域的网址,点击应用

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

3、选中自己新增的镜像,点击使用,这时候注册表

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

4、这时候注册表就能正常访问和下载镜像了,不过有个问题,搜索的镜像往往会出现在靠后甚至第二第三页

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

5、如果总是找不到自己要的镜像,也可以通过命令行的方式去下载,需要通过ssh登录群晖的后台,然后用命令的方式进行下载。

比如:你的Workers项目自定义域名为:docker.abc.com,在拉取镜像的时候,在官方镜像路径前面加你的自定义域名即可,如:docker pull docker.abc.com/stilleshan/frpc:latest

搭建自己的Docker 镜像源,解决群晖7.2 Container Manager(Docker)注册表不能用

至此,群晖7.2无法使用Docker/Container Manager的问题就算是解决了,码字不易,如有帮助请帮忙点赞、收藏、分享,如果有其他问题,欢迎在留言区讨论。

项目代码来源:

感谢作者cmliu的github项目:CF-Workers-docker.io

https://github.com/cmliu/CF-Workers-docker.io




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/8425.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: