Unraid是挺好用的,但是因为家里用的移动,所以托管在github上的代码下载速度极慢,有时候遇到dns污染还会出现网络错误。由于还没有折腾好移动的光猫,索性就琢磨手动安装Unraid插件,实现加速。
商店Feed加速
Apps选项卡经常会出现刷新失败,即使更换DNS也无济于事,通过查看/usr/local/emhttp/plugins/community.applications/include
目录下的 paths.php
文件可以确定更新Feed需要的路径
这里可以通过反代方式切换到不容易被干扰的域名,也可以使用jsdelivr的CDN反代Github静态资源
我也在本站的 /unraid/
路径下放置了对应的文件,并为不易访问的imgurl和github部分图片地址增加了反向代理,两小时更新一次,修改后的 paths.php
如下
Update:在经过一番讨论之后,考虑到替换文件并不能及时的跟上CA插件的版本更新,如果你急需加速,但是本gist没能跟上,不妨在/usr/local/emhttp/plugins/community.applications/include
目录下执行
sed -i 's/raw.githubusercontent.com/cdn.jsdelivr.net\/gh/g;/https:\/\/cdn.*/s/\/master/@master/g' paths.php
这样就可以得到正确替换的使用jsdelivr加速过的App Feed,但是说老实话,这样得到加速过的Feed对插件下载这种仍需要走github的情况并不友好,我也在努力恢复本站/unraid
路径下的文件。
插件的安装
插件商店的连接是托管在github上的,安装插件只需在插件选项卡下粘贴好如下链接并点击安装 https://raw.githubusercontent.com/Squidly271/community.applications/master/plugins/community.applications.plg
我们直接访问这个网址,发现这是一段类似shell脚本的东西,里面指定了安装动作和卸载动作,以及运行前的环境。我忽然意识到Unraid是基于Slackware发行版的,这个发行版非常小众,没有常见的包管理器帮你把依赖装好,甚至就连启动服务也不是通过systemd而是类似BSD的方式。
但是仔细观察发现脚本中
<FILE Name="/boot/config/plugins/&name;/&name;-&version;-x86_64-1.txz" Run="upgradepkg --install-new">
这一行命令是将在指定路径下的文件安装到系统中。故可通过手动下载好插件,放入对应的文件夹中,运行指令安装。
首先我们要先找到插件安装的脚本,只需要找到对应插件,点击安装,你可以在弹出的提示框中找到项目的地址,直接把这个文件上传到 /boot/config/plugins/
下,并创建一个同名的文件夹
按照上图的例子,这个文件夹应该命名为 dynamix.system.info
同时下载对应的txz文件放入该文件夹,最后在面板的Plugins页面手动选择安装plg文件即可。
Docker加速
Unraid自带的商店里大部分的应用是基于Docker的,只不过官方写好了一个模板,由于移动家宽连接Dockerhub的认证服务器总是超时,而通过传统方式添加国内源的办法又总是失效,这里可以使用修改启动脚本实现自启动生效。修改 /boot/config/go
文件,添加如下代码:
tee -a /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://*.mirror.aliyuncs.com"]
}
EOF
也可以指定docker镜像的方式,在pull镜像的时候就指定
docker pull dockerhub.azk8s.cn/linuxserver/qbittorrent
即可避免因为网络问题导致部署失败。
注意,这一步需要替换模板中的 Repository
为你的镜像地址,例如本例中的 dockerhub.azk8s.cn/linuxserver/qbittorrent
而不是默认的 linuxserver/qbittorrent
11 条评论
2022年5月此方法已失效
有没有那么一种可能,就是这个方法我还在用,而且没有失效?(狗头)
是不是已经失效了
由失效的可能,因为Unraid的插件系统经常升级,但是需要改的地方没有变
@Issacc Can you contact Squid on the limetech forums. I want to integrate this CDN into CA itself, but have a couple of questions.
您可以在limetech论坛上与Squid联系吗? 我想将此CDN集成到CA本身,但有两个问题。
谢谢大佬的反代~
新手刚刚学习,一直为app商店打不开困扰,试过修改hosts和加DNS,仍就出现打不网页的问题,看了楼主的教程,一头雾水,没有找到php文件,不知道该怎么办,请救帮助,留下我的Email:xiangqini_ni@sina.com。
这个需要你ssh进unraid系统,如果你对这方面不太了解,我建议你先看看司波图的视频୧(๑•̀⌄•́๑)૭
paths.php文件的49行需要添加:
$caPaths['pluginWarning'] = "{$caPaths['flashDrive']}/plugins_accepted";
确实,后续会做更改,出现问题的原因是插件商店更新了୧(๑•̀⌄•́๑)૭