Docker无法拉取镜像 NAS配合OpenWrt起飞
AI-摘要
切换
Tianli GPT
AI初始化中...
介绍自己
生成本文简介
推荐相关文章
前往主页
前往tianli博客
前言
最新消息显示,目前似乎出现了全网封禁的情况,多个公共镜像库要求删除与 hub.docker 源相关的内容。
去年,hub.docker 因某些原因被封锁,导致注册表和直接访问异常,于是 NAS 用户开始使用 docker pull 和其他镜像库替代 hub.docker 源库。
突然间这段时间,国内所有公共镜像库和 docker pull 都无法连接到 hub.docker 公共镜像库,初步猜测是下载服务被墙。
- 群晖里也是一样,注册表只能搜索到镜像点击下载,完全没反应!
- 所以我就想着最简单直接的方案就是:科学,想着在NAS上安装一个openwrt来实现软路由模式!

准备情况
- X86 版本群晖 查询你的 CPU 架构
- 自己稳定的🐔场 (没有的可以点这)
- 电脑和✋🏻
设备环境
- macOs Sonoma 14.4.1
- DS420+
- DSM 7.2.1-69057 Update 5
- Virtual Machine Manager v2.6.5-122202
- Chrome
- SSR/V2RAY 协议🐔场
安装虚拟机
- 打开群晖套件中心,搜索
Virtual Machine Manager安装

下载 OpenWrt 镜像
- OpenWRT版本非常多,这里用到的是编译好的集成版,集成了大部分小白能用到的功能,所以建议直接从这里下载,因为是虚拟机没有硬件规格的限制,推荐下载高大全版本!
- 软路由镜像下载:下载地址

- 下载好的是
.gz的包,Mac 自带的压缩无法解压,需要用第三方压缩软件打开,我用的是 Fastzip

- 解压出来后是一个
.img的镜像文件,这就是我们要装在虚拟机的包

安装部署
部署OpenWrt
- 打开刚刚安装好的
Virtual Machine Manager - 点击镜像 - 硬盘映像 - 新增 - 从计算机,选中刚刚解压出来的
.img文件

- 确认勾选好存储空间后点击完成

- 等待上传完成,状态显示“良好”


- 上传镜像完成之后我们进入虚拟机 - 导入

- 从硬盘映像导入 - 下一步

- 之后下一步,到这个画面随意取一个名称,CPU 和内存分别给 1G 就够用了,下一步

- 选中刚刚上传到 NAS 里的OpenWrt镜像 然后下一步

- 这里配置一下网络,型号选择e1000,点击下一步
有一个小细节需要注意,如果型号不选择 e1000 也可以正常使用,但 LAN 口可能会变成半双工。如果你的虚拟软路由的 LAN 口只能使用半双工,那很可能是由于未选择 e1000 型号导致的。

- 接下来配置一下自动启动,其他保持默认,下一步
- 之后账户权限自行选择你自己的管理员账户就完成部署了

- 部署完成之后回到群晖的虚拟机,点击"连接"

- 进入终端之后按两下回车,看见root账户再输入以下代码后回车
vi etc/config/network

- 之后进入配置文件,查看配置文件后,按下键盘上的
i键,找到对应的行,将地址修改为与路由器同一网段
例如 192.168.31.xxx。如果不确定 IP 地址是否会发生冲突,可以将末尾的数字设置大一些,例如180至200之间。
- 我这里是设置成192.168.31.9,因为我这路由的"DHCP服务"设置了10-254所以10之前的都是预留自己自定义使用,不会何其他设备冲突!

- 修改完成后按下键盘上的
esc,再输入:wq后回车保存

- 最后再输入
reboot重启 Openwrt

- 接下来等重启完成之后再浏览器输入刚刚设置的 IP 地址192.168.31.9访问OpenWrt
- 进入下面界面就表示至Openwrt 我们就安装部署完毕了✌🏻
OpenWrt默认密码:password

设置OpenWrt
- 输入密码
password进入 OpenWrt 界面,找到 网络 - 接口 - LAN - 修改

- 将网关、DNS 服务器都指向主路由的地址,我这是192.168.31.1

- 还有最下方的DHCP服务器-基本设置
忽略此接口钩上 - IPv6相关设置全部停掉,之后点击"保存并应用"即可


- 到这里OpenWrt所有基本设置都完毕了,最后确认一下网络
- 进入 网络-网络诊断 Ping一下看看网络通了没,一切正常的话就可以开始配置科学环境了

配置魔法环境
- 这里面集成的工具有很多,我比较习惯使用 Clash 和 SSR
- 这里我演示两个插件 OpenClash 和 ShadowSocksr Plus+
- 自用八年推荐🐔场 (点这)
OpenClash

- 进入 OpenWrt 菜单栏 - 服务 - OpenClash - 配置订阅 - 添加 订阅信息

- 添加订阅信息 配置文件名:自定义
- 订阅地址:把自己的订阅网址粘贴进去
- 完成之后点击"保存配置"

- 接着我们回到【运行状态】页面 拉倒最下面点击 【启动OpenClash】

- 看到以下信息全绿了就表示启动成功了!

ShadowSocksr Plus+

- 进入 OpenWrt 菜单栏 - 服务 - ShadowSocksr Plus+ - 服务器节点 - SSR/V2RAY订阅URL地址

- 添加完之后拉到下面点击"更新所有订阅服务器节点"
- 更新之后选择自己要用的节点直接"应用"

- 设置完之后,回到基本设置看看是否正在运营!
ShadowsocksR Plus+ 运行中
- 运行状态显示绿色就表示运行成功了
- 现在你的家庭网络里就多了一个能够科学上网的旁路由了

NAS环境配置
- 回到我们群晖NAS后台 进入控制面板
- 进入 网络 - 网络界面 - 选着使用的网络 - 编辑 - IPv4 - 手动设置
- 把 网关 和 DNS Server 都设置成OpenWrt的IP地址 之后保存就OK了!

- 接下来我们体验一下 Docker 拉取镜像!
- 随便找一个镜像试试效果!



旁路由使用方法
- 使用旁路由的方法也十分简单,只需将路由器网关地址和 DNS 地址都设定为旁路由的地址即可。
- 在电脑上通常可以在网络设置中找到这个选项,在手机上则可在 Wi-Fi 设置中完成。
- 无论是在 MacOS、Windows 还是 iOS 等各个平台上,操作步骤都是相同的。
- 我以Macos为例,点击网络或者WiFi进入设置

- 把配置设置成手动,路由器这填写OpenWrt的ip地址:192.168.31.9

- 最后把DNS服务器也同样的设置成OpenWrt的地址!点击完成!这样就大功告成了!

完成
- 让我们体验一下效果!


- 大功告成,这样一来可以解决了Docker容器镜像拉取问题!
- 还能给家里设置一个旁路由的环境!还是不错的!
- 希望本次教程对大家有所帮助!创作不易希望大家能多多转发收藏本站!感谢感谢~~!
- 我是阿狸鹿丫,一个业余爱瞎折腾的数码软件爱好者,技术小白。

- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 @阿狸鹿丫(https://blog.aliluya.com/)

