前言
年初时博主为了学习 Docker 镜像的制作启动了 Aria2 Pro 项目,最初只是随便尝试一下,也没想到会这样受欢迎。现在几乎每隔几天就会有小伙伴问“ Aria2 Pro 在群晖上怎么部署”。不过话说 Aria2 Pro 文档已经很详细了,那小伙伴们为什么还要这么问呢?难道群晖 DSM 上的 Docker 有什么特殊性?于是博主带着疑问最近抽空了解了一下群晖的现状,然后发现大多数教程都只是某一个应用部署的流水式步骤记录,这也导致了目前大量的群晖用户实际上并没有学会如何使用 Docker ,而是跟着走了一遍某个应用的部署流程。了解情况后教程自然是要安排上的,但写纯粹的流水式步骤教程也并不是博主的风格,也没多少价值,所以这篇教程除了在群晖上部署 Aria2 Pro ,还会有一些对小伙伴们会很有用的一些知识。如果你已经对 Docker 有一定的了解,那么认真看完并付诸实践后就基本可以算得上是精通群晖 DSM 上的 Docker 部署了。
常规部署
- 在 Docker 注册表界面搜索
aria2-pro
或者p3terx
,下载 Aria2 Pro 镜像。 - 在 Docker 映像界面选择刚刚下载的
p3terx/aria2-pro
映象并启动。 来到创建容器界面,点击高级设置。
TIPS: 如果机器性能一般,大批量下载时很容易吃满 CPU ,为了不影响其他服务的运行,建议勾选启用资源限制,CPU 优先顺序建议选择中,内存则根据自己的实际情况来限制。
在高级设置的卷选项卡下按照下图所示根据自己的实际情况添加配置目录(
/config
)和下载目录(/downloads
)的文件夹和装载路径。TIPS: 左边是宿主机的文件夹路径,也就是实际文件要保存的位置,右边是容器内已经定义好了的路径,这里的设置是对它们之间进行映射。在实际使用中容器中的服务所显示的是右边的路径,就比如在添加下载任务时看到的就是
/downloads
,配置文件中的附加功能脚本路径是/config
。文件保存的位置在这里就已经定义好了,所以在部署好后在配置文件中去修改是错误操作。在高级设置的网络选项卡下勾选使用与 Docker Host 相同的网络。
TIPS: 勾选后就不需要填一遍一模一样的端口号进行映射了,减少了一层 NAT ,会提升一定的网络性能,还能直接使用 IPv6 网络。很多教程会写容器端口映射的设置,那是因为早期 Docker 还没有 Host 网络模式,久而久之端口映射就成为了传统技能。而且这个提示让人觉得得好像会上不了网一样,它很大概率会让人放弃尝试和探索这个选项。
来到高级设置的环境选项卡,如果没有特殊需求一般只需要考虑定义下图红框内的 5 个环境变量的值,其它变量的详细介绍情参见 Aria2 Pro 文档。
LISTEN_PORT
:BT 监听端口(TCP)、DHT 监听端口(UDP)设置,默认为6888
RPC_PORT
:RPC 端口,默认为6800
。WebUI 连接时需要填写的端口。RPC_SECRET
:RPC 密钥,即 WebUI 连接时需要填写的密码,只建议使用字母和数字。PUID
和PGID
:这取决于你想让哪个用户管理下载来的文件。群晖 DSM 初始化时创建的用户默认是1026
和100
。建议通过 SSH 连接群晖后执行id
命令去确认一下,不懂怎么做就直接留空。- 前 3 个环境变量如果留空后续可以通过配置文件进行修改,否则在配置文件中就是固定的,想要修改就需停止容器后修改相应的环境变量。
- 最后就是点击应用、下一步之类的按钮进行部署了,没什么难度,图片省略。
容器初始化完成后在配置目录会有如下文件。如果长时间没有出现,那么就需要查看日志,看是否出了什么问题。
TIPS: 默认的配置文件经过博主多年调教完全可以满足多数人的需求,一般不需要进行修改。如果改坏了可以把它们删除,然后重启容器,就会恢复初始状态。
完事后就是使用你喜欢的方式去连接了,博主个人推荐使用 AriaNg,对于初次接触的小伙伴,建议去看《AriaNg 使用教程》。
CLI 一键部署
下面来说说让大多数群晖用户闻风丧胆的 CLI 部署,也就是 Docker CLI 原生命令行启动 Docker 容器的方式。当你从相关文档中获取到启动命令后,直接复制、修改、粘贴一把梭就完事了,所有步骤用一张图足以说明:
思维活跃的小伙伴接下来肯定会去咕鸽搜索SSH是什么
、群晖如何SSH连接
之类的,然后仿佛打开了新世界的大门,一发不可收拾。有些小伙伴的关注点可能在博主的 PowerShell 怎么这么好看上,准备留言“教练我想学”。还有一部分小伙伴可能已经关闭窗口了。所以这个部分只讲几个重点,启发一下想进一步学习的小伙伴。
- 在控制面板中启用 SSH 功能才能进行 SSH 连接。
- 从 Aria2 Pro 文档获取启动命令,选项及参数在文档中有非常详细的说明,根据自己的实际需求调整。
- 创建文件夹,查看它们的完整路径,替换启动命令中相关部分。
- 在群晖 DSM 中 Docker 启动命令前需要加上
sudo
命令使用超级管理员(root)权限执行。会要求输入密码,也就是登录 DSM 网页管理页面的密码。
如果小伙伴们通过 CLI 一把梭的方式把 Aria2 Pro 部署成功,那么其它大多数的 Docker 应用部署就基本上游刃有余了,也就不再需要琢磨只讲某一个应用的流水式教程了。
群晖的 BUG
之前有很多使用群晖的小伙伴反馈说 Aria2 Pro 把内存占满了,当时猜测是磁盘缓存设得太大了,下载任务太多了。现在博主通过实际测试发现真实情况是群晖 DSM 的内存统计 BUG。
尾巴
几分钟能读完的教程绝对不是几分钟能写出来的,如果觉得这篇教程和 Aria2 Pro 对你有帮助,那么快去 GitHub 和 Docker Hub 点个 star 吧!
本博客已开设 Telegram 频道,欢迎小伙伴们订阅关注。
本文作者:P3TERX
本文链接:https://p3terx.com/archives/synology-nas-docker-advanced-tutorial-deploy-aria2-pro.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。非商业转载及引用请注明出处(作者、原文链接),商业转载请联系作者获得授权。
非常感谢,太好用了,哪里有赞助二维码支持一下儿。
大佬,能否也给绿联云的教程(绿联云、极空间等用户在变多呢),严格按照你通用docker的设置参数后,绿联云里aria2pro会无限重启,ariang默认啥也不改可以用动一点设置比如ipv6啥的,也会无限重启-_-不知道是不是和绿联云本身带的离线下载就是aria2的原因
萌新请教一个问题,下载路径指定在群晖里挂载的cifs文件夹,下载种子或者磁链总是提示错误,下载普通文件没事,是哪里的权限问题?
要看具体错误提示是什么
我想问能不能实现下载的时候选择种子里的部分文件?而不是直接生成文件,有很多个视频在一起的种子,直接把我SSD爆了。
我发现可以暂停,然后去掉,但是好像文件已经生成了,不会删除。是不是falloc的原因呢?
关闭预分配
啊这 有没有qnap的教程啊
我没有 QNAP,不然也就水一篇了。其实你搞懂 Docker 了什么设备都会了。
....唉,我去我刚设置完下了个猩猩和怪兽打架的电影美滋滋的,,这会一看ariang里面显示未连接...这..
重启了也这样,然后重启群晖还是这样
我也是群晖,一路操作都是正常的。资源好的话,能达到带宽上限
新年快乐!请问是在配置文件aria2.cof里的bt-tracker后边填写上tracker地址就可以自动更新tracker了吗
搞错了,请问要怎么从指定url上自动更新tracker呢
设置
CUSTOM_TRACKER_URL
变量对,我也想问这个问题的...这个CUSTOM_TRACKER_URL 变量里面是直接贴上tracker的地址还是自动更新的链接地址?比如xxxx.com/tracker.txt ?
xxxx.com/tracker.txt
你好博主,我有两个问题,这个自动更新tracker服务器列表是在重启容器时吗?如果不自定义,默认是带有一个列表地址的是吧?
请问群晖docker下怎么对Aria2 Pro进行版本更新?直接重装一遍吗?
图形界面的话删容器,重新下镜像,然后重建。
CLI 下可以使用 watchtower 一把梭更新。
你好,打扰了,我想请教一下,如果aria2下载时指定磁盘发生意外,软件会改变默认下载路径到哪个位置?我的情况是系统盘被占满空间,但是就是找不到对应的临时文件来删除,我是从ariang的面板里删除了任务才让故障消失。其实除了这个方法外我应该还能怎么操作?求教!当时用网上的 du 的命令对比后也没发现有异常大的文件夹存在,哈哈,果然我还是太菜!!!
啊这...
Docker 是在容器创建时已经对路径进行了映射了,所以你如果直接改下载路径,很有可能就下到容器里面去了。
希望支持PT用的qbittorrent、transmission自动上传脚本
博主的脚本太棒了
因为群晖用户萌新比较多,建议在本篇中提一下UI的事情
UI 有一篇专门教程,文中有提及。
https://p3terx.com/archives/aria2-frontend-ariang-tutorial.html
楼主我插个题外话,我用了你dokerhub上的kms的激活服务,试用系统成功,试用office365失败。求指导
Office 365 是订阅制付费的,你需要安装 Office 批量授权版或者进行版本转换才能激活。
大神,有办法能增加监控文件夹的功能吗?就是自动添加某个文件夹里的种子下载
这个需求建议用 qBittorrent ,现成的功能。
为什么博主的 PowerShell 怎么这么好看,因为用了Windows Terminal。所以配置公布一下呗
aria2-pro真的很棒!
求一个Windows上的docker desktop部署教程啊,Aria2 Pro和ADGuardhome部署都或多或少出现问题,AriaNg倒是十分好用 OωO
Windows 上的 Docker 据说很坑,所以一直还没敢尝试。
看来是了 ∠( ᐛ 」∠)_ ,目前就只能用IDM+Motrix搭配Aria2 Pro里的tracker来苟着