利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

2024-06-29 18:28:13 15点赞 118收藏 5评论

背景:

前段时间dockerhub因为比较复杂的原因在国内被墙了利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

之前只是register服务器被禁用,还能通过使用国内众多的镜像使用

或者通过命令行docker pull拉取镜像

但是这回所有镜像站都被关闭命令行也不好使了。

这直接导致群晖dsm7.x的container manager也无法下载镜像利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

经常更新镜像的项目,需要开全局代理才能够正常拉取镜像,特别麻烦。

尤其是docker engine/cli这些镜像的配置非常的麻烦,远比常规的bash代理复杂很多。

对于很多nas用户来说非常使用非常困难

特别是这类配置代理的手段,需要重启整个docker daemon

说人话就是要关掉所有正在运行的 容器

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题


但是天无绝人之路,前两天看到一篇利用cloudflare pages搭建临时的镜像的文章

试了试,还真的有效

原帖的地址在这里

[20行代码解决dockerhub的访问问题] https://zhuanlan.zhihu.com/p/705937780

感兴趣的可以去原帖查看

省流:

这个方法应该同时适用于dsm6.x和dsm7.x,具体细节可能因为两个版本系统会有差异

你需要做的就是注册cloudflare和github

使用这种方法的代理后,拉取镜像的速度可以跑满带宽利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

什么是cloudflare

这里先简单介绍一下cloudflare

Cloudflare, Inc. 是一家美国公司,提供内容分发网络服务、云网络安全、DDoS缓解、域名服务以及ICANN认证的域名注册服务。Cloudflare的总部位于加利福尼亚州的旧金山。--引用自bing

下面简称CF

CF是一个全球范围的cdn超级巨头,为很多公司的服务器提供cdn服务

(cdn就是类似一个很远的网站,缓存在一些内容在离你比较近的cdn服务器,这样访问延迟,目标服务器压力都会小很多)

值友很多应该听说过PCDN,这个就是一个差不多,cdn服务。

CF的规模很大,也提供很多免费的服务可以白嫖。

比如什么常见的DNS域名托管,解析,也对个人网站提供限量的免费的cdn服务。

简单说就是可以白嫖很多服务了,具体细节去看别的文章吧利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

这里要用到就是CF提供的一个pages,网站服务

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

大概就是给你提供一个免费的小网站服务器,你没法直接操作。

我们要用的就是用CF这个pages服务为dockerhub搭建一个临时的访问点。

当你用docker 访问这个站点时,可以自动转发给dockerhub

实现一个类似nginx 那样的代理效果。

重点是免费

一天提供10000次访问,对于nas用户和一些科研需要的用户,完全足够了利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

什么是github

github实际上是一个很大的,代码托管平台,简单就是提供免费的代码存放 管理服务,

很多人会把自己的代码上传到上面分享,方便其他用户使用,也有很多商业公司在使用github。

github也提供很多免费的服务,比如常见的action自动构建,可以用来编译一些代码,例如openwrt镜像。还有github.io 免费静态网站,可以为自己生成一个免费的静态页面网站,还给你一个不错的域名,但是不能用于其他用途。


想要使用代理

首先你需要在这两个网站上面注册,这里我就略过了

可能有点麻烦的会是github注册,因为可能需要用到2FA,简单说就是一个手机令牌

你可以下载一个microsoft authenticator app来绑定。

Cloudflare的注册就比较简单了,常规的邮箱注册即可。

Github fork项目

这里教程中提到的项目就是位于 whyun-pages/docker-registry (github.com)。

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

然后你需要打开这个项目的网站

按上面的图片点击右上角的fork按钮 (fork的意思是分叉,复制的意思

然后点击确定,复制一份他的代码到你的github仓库当中。

从右上角点击头像,打开your repositories

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

你就能能够看到一个从作者那里fork过来的docker-registry项目了。

剩下的流程就很简单了,跟着上面帖子的流程走就行了。

走完上述流程,你应该可以打开一个这样的镜像网站

(可能需要等几分钟,因为你新开的网站,域名dns解析刷新需要时间

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

给群晖配置代理镜像

流程很简单,先打开群晖的container manager

当然dsm6的docker应该也能使用

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

切换到注册表,点击上方的设置

让我们开始设置镜像代理

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

我们需要修改一下原有的docker hub注册项

像这样

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

如果没有这个的话,你也可以手动添加一个

点击新增即可

注册表名称随意: 毕竟只是名称,你可以改成cloudflare

然后注册表url 是 https://index.docker.io

勾选启用注册表镜像,对应的url里面填入你在CF pages得到的那个网站页面地址

勾选下面的信任的ssl自我签署证书。

上面的记得都要带上https

填完点击确定后,

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

返回上一级,选择你新建的项,然后点击那个使用

这样就选择了这个项作为dockerhub注册的项目了。

确定后,回到container manager里面

点击注册表,随意搜索一个镜像

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

然后我们拉取试试

利用CloudFlare解决群晖DockerHub被禁后无法拉取镜像问题

可以看到有下载速度,并且速度非常夸张的跑满了带宽

可以说效果非常棒。

当然记得不要随意泄漏你们的临时镜像的域名

不然可能会被别人大量拉取,然后超过使用上限。

希望这篇帖子能够帮到大家

然后有什么问题可以在评论区提问

偶尔会回复一下

部分地区可能因为宽带运营商的问题会无法访问github,所以可能会需要代理(比如说移动宽带)

拜拜

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2848.99元起

DS923+ 双核心 四盘位 NAS网络存储服务器 私有云 文件服务器

DS923+ 双核心 四盘位 NAS网络存储服务器 私有云 文件服务器

4949.99元起

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

Synology 群晖 DS423+ 4盘位 NAS网络存储 (Intel四核 、无内置硬盘)

4098.99元起

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

Synology 群晖 DS920+ 4盘位 NAS存储(J4125、4GB)

2190.84元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

Synology 群晖 DS1821+ 8盘位 NAS(V1500B、4GB)

7196元起

Synology 群晖 DS1621+ 六盘位NAS (V1500B、4GB)

Synology 群晖 DS1621+ 六盘位NAS (V1500B、4GB)

6899元起

DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

DS223j 双盘位 NAS网络存储服务器 私有云 智能相册 文件自动同步

1549元起

Synology 群晖 DS1522+ 5盘位NAS(锐龙R1600、8GB)

Synology 群晖 DS1522+ 5盘位NAS(锐龙R1600、8GB)

5167.19元起

Synology 群晖 nas私有云主机DS923+网络存储器企业家庭用存储盘4盘位局域网共享硬盘盒群辉ds920

Synology 群晖 nas私有云主机DS923+网络存储器企业家庭用存储盘4盘位局域网共享硬盘盒群辉ds920

4950元起

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

Synology 群晖 DS1821+ 8盘位NAS (V1500B、4GB)

8899元起

Synology 群晖 DS223J 家用NAS存储 双盘位

Synology 群晖 DS223J 家用NAS存储 双盘位

1549元起

Synology 群晖 DX517 5盘位NAS存 黑色

Synology 群晖 DX517 5盘位NAS存 黑色

4049元起

Synology 群晖 DS423+四盘位中小企业NAS网络存储服务器 备份一体机企业私有云网盘 DS420+升级版

Synology 群晖 DS423+四盘位中小企业NAS网络存储服务器 备份一体机企业私有云网盘 DS420+升级版

4099元起

Synology 群晖 DS224+ NAS配1块4TB群晖HAT3300硬盘套装 数据备份一体机

Synology 群晖 DS224+ NAS配1块4TB群晖HAT3300硬盘套装 数据备份一体机

暂无报价

Synology 群晖 DS720+ 双盘位NAS(J4125、2GB)

Synology 群晖 DS720+ 双盘位NAS(J4125、2GB)

4099元起
5评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
相关话题
最新文章 热门文章
目录
118
扫一下,分享更方便,购买更轻松