一、前言
在本文之前,博主在家用服务器 CentOS 上使用的下载方案是 Aria2 和其前端面板 Ariang. 所下载的资源大多数是 BT 资源,奈何 Aria2 对 BT 资源的下载速度实在堪忧,配置 BT 服务器效果不佳且费时。每次都将 BT 资源云添加至迅雷云盘,再使用 网盘直链下载助手 等脚本将迅雷云盘资源推送至 Aria2 进行下载。这种方法也能够享受到迅雷会员的快速取回速度,但在多下载任务时各任务的下载速度无法正常分配,出现“抢速度”的情况,低下载速度的任务在有空闲下载带宽时也无法恢复下载速度。此外,既然都已经在迅雷云盘里了,为何不使用迅雷的完整方案,使用迅雷NAS进行远程下载?
迅雷NAS在各大 NAS 平台上都已经开放下载,不过 CentOS 肯定是享受不到了,但也可以通过 Docker 这种神器完成迅雷NAS的部署。
二、Docker部署迅雷NAS
大佬 cnk3x 在Github上分享了一套提取自群晖平台的迅雷下载套件,用于其他Linux机器上的迅雷远程下载服务。项目地址:Github: cnk3x/xunlei.
通过如下命令完成 Docker 安装迅雷NAS:
<span class="token function">docker</span> run <span class="token parameter variable">-d</span> <span class="token punctuation">\</span> <span class="token parameter variable">--name</span><span class="token operator">=</span>xunlei <span class="token punctuation">\</span> <span class="token parameter variable">--hostname</span><span class="token operator">=</span>GUDI-NAS <span class="token punctuation">\</span> <span class="token parameter variable">--net</span><span class="token operator">=</span>host <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /opt/xunlei/data:/xunlei/data <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /media/downloads:/xunlei/downloads <span class="token punctuation">\</span> <span class="token parameter variable">--restart</span><span class="token operator">=</span>unless-stopped <span class="token punctuation">\</span> <span class="token parameter variable">--privileged</span> <span class="token punctuation">\</span> cnk3x/xunlei:latest<span class="token function">docker</span> run <span class="token parameter variable">-d</span> <span class="token punctuation">\</span> <span class="token parameter variable">--name</span><span class="token operator">=</span>xunlei <span class="token punctuation">\</span> <span class="token parameter variable">--hostname</span><span class="token operator">=</span>GUDI-NAS <span class="token punctuation">\</span> <span class="token parameter variable">--net</span><span class="token operator">=</span>host <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /opt/xunlei/data:/xunlei/data <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /media/downloads:/xunlei/downloads <span class="token punctuation">\</span> <span class="token parameter variable">--restart</span><span class="token operator">=</span>unless-stopped <span class="token punctuation">\</span> <span class="token parameter variable">--privileged</span> <span class="token punctuation">\</span> cnk3x/xunlei:latestdocker run -d \ --name=xunlei \ --hostname=GUDI-NAS \ --net=host \ -v /opt/xunlei/data:/xunlei/data \ -v /media/downloads:/xunlei/downloads \ --restart=unless-stopped \ --privileged \ cnk3x/xunlei:latest
上述命令中:
-
hostname
: 设备名称。 -
--net=host
: 将容器网络设置为host
模式,网页访问的默认端口为2345
. 可以通过添加命令-p PORT:2345
或者通过修改环境变量XL_DASHBOARD_PORT
来修改端口。 -
/opt/xunlei/data:/xunlei/data
: 将容器中的/xunlei/data
目录挂载至主机/opt/xunlei/data
目录下。 -
/media/downloads:/xunlei/downloads
: 将容器中的/xunlei/downloads
目录挂载至主机/media/downloads
目录下。挂载目录视自身情况改变。
-
restart=unless-stopped
: 设置停止时自动重启。 -
privileged
: 当使用 privileged 选项运行容器时,Docker会赋予容器几乎与主机相同的权限。
若是因为网络问题无法正常访问 Docker 仓库,可以将镜像仓库替换为阿里云仓库:registry.cn-shenzhen.aliyuncs.com/cnk3x/xunlei:latest
. 如下述命令所示:
<span class="token function">docker</span> run <span class="token parameter variable">-d</span> <span class="token punctuation">\</span> <span class="token parameter variable">--name</span><span class="token operator">=</span>xunlei <span class="token punctuation">\</span> <span class="token parameter variable">--hostname</span><span class="token operator">=</span>GUDI-NAS <span class="token punctuation">\</span> <span class="token parameter variable">--net</span><span class="token operator">=</span>host <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /opt/xunlei/data:/xunlei/data <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /media/downloads:/xunlei/downloads <span class="token punctuation">\</span> <span class="token parameter variable">--restart</span><span class="token operator">=</span>unless-stopped <span class="token punctuation">\</span> <span class="token parameter variable">--privileged</span> <span class="token punctuation">\</span> registry.cn-shenzhen.aliyuncs.com/cnk3x/xunlei:latest<span class="token function">docker</span> run <span class="token parameter variable">-d</span> <span class="token punctuation">\</span> <span class="token parameter variable">--name</span><span class="token operator">=</span>xunlei <span class="token punctuation">\</span> <span class="token parameter variable">--hostname</span><span class="token operator">=</span>GUDI-NAS <span class="token punctuation">\</span> <span class="token parameter variable">--net</span><span class="token operator">=</span>host <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /opt/xunlei/data:/xunlei/data <span class="token punctuation">\</span> <span class="token parameter variable">-v</span> /media/downloads:/xunlei/downloads <span class="token punctuation">\</span> <span class="token parameter variable">--restart</span><span class="token operator">=</span>unless-stopped <span class="token punctuation">\</span> <span class="token parameter variable">--privileged</span> <span class="token punctuation">\</span> registry.cn-shenzhen.aliyuncs.com/cnk3x/xunlei:latestdocker run -d \ --name=xunlei \ --hostname=GUDI-NAS \ --net=host \ -v /opt/xunlei/data:/xunlei/data \ -v /media/downloads:/xunlei/downloads \ --restart=unless-stopped \ --privileged \ registry.cn-shenzhen.aliyuncs.com/cnk3x/xunlei:latest
接下来放行防火墙网页访问端口:
firewall-cmd <span class="token parameter variable">--zone</span><span class="token operator">=</span>public --add-port<span class="token operator">=</span><span class="token number">2345</span>/tcp <span class="token parameter variable">--permanent</span> firewall-cmd <span class="token parameter variable">--reload</span>firewall-cmd <span class="token parameter variable">--zone</span><span class="token operator">=</span>public --add-port<span class="token operator">=</span><span class="token number">2345</span>/tcp <span class="token parameter variable">--permanent</span> firewall-cmd <span class="token parameter variable">--reload</span>firewall-cmd --zone=public --add-port=2345/tcp --permanent firewall-cmd --reload
完成配置。
三、启用迅雷NAS
访问 IP:2345
访问迅雷NAS网页。
扫码登录:
输入内测邀请码(经过测试 迅雷牛通
内测码有效):
接下来就可以在手机 APP 中查看远程设备,设备名称格式为 群晖-hostname
, 但是在没有下载过任何文件的情况下,使用远程设备取回云盘文件可能会出现无下载路径的情况,可以通过迅雷NAS的网页访问端先进行一次取回,接下来便可以使用远程设备功能进行云盘文件取回了。
此外,使用命令 docker ps
查看当前容器运行情况。
原文链接:https://blog.csdn.net/weixin_60379788/article/details/140206405?ops_request_misc=%257B%2522request%255Fid%2522%253A%25221e7686f632b2c987f5bdb7fc3f5044ba%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=1e7686f632b2c987f5bdb7fc3f5044ba&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-22-140206405-null-null.nonecase&utm_term=%E6%9E%81%E7%A9%BA%E9%97%B4nas