nas-tools 完整教程:一条 Docker 命令部署 NAS 媒体库管理工具
【免费下载链接】nas-toolsNAS媒体库管理工具项目地址: https://gitcode.com/GitHub_Trending/na/nas-tools
nas-tools 是一个免费开源的 NAS 媒体库管理工具,一条 Docker 命令即可在群晖、威联通或 x86 小主机上跑起来。它自动解析媒体文件名、统一接管下载器任务、同步 Plex 媒体库,帮你把散落在各处的电影剧集整理成规范的目录结构,全程不需要手动改名。
为什么值得装一个
想象这样一个场景:你下了 200 部剧集,文件夹里是「【4K】某剧.S01E01-03.1080p.x264.mkv」这种长文件名。Plex 认不出季集、封面缺失、文件夹结构乱,想归档只能一部一部手动改名。
nas-tools 就是解决这件事的:它读取文件名里的「剧名 + 季 + 集」信息,重命名成 Plex、Emby 这类媒体服务器能正确识别的格式,并把下载器新落盘的文件自动纳入整理。
它支持三种安装方式,按需选择:
| 安装方式 | 适合人群 | 特点 |
|---|---|---|
| Docker | 所有 NAS / Linux 用户 | 一条命令启动,amd64、arm64 架构通用 |
| 可执行文件 | 不想用 Docker 的服务器 | 从项目 Release 页下载即用 |
| 群晖套件(SPK) | 群晖用户 | 在群晖套件中心直接安装 |
对新手来说,Docker 是阻力最小的路径,下面所有讲解都基于它。
nas-tools 的 4 个核心能力
1. 媒体文件名自动解析:从乱名到规范目录
解决什么问题:下载器落盘的文件名五花八门,媒体服务器无法正确识别季集。
大致怎么实现:输入是原始文件名,工具内部先做繁简转换和清洗,再用 anitopy 这类解析库提取出「剧名、季号、集号」,最后输出「剧名/第X季/剧名 S01E01.mkv」的标准结构。整个流程是「解析 → 重命名 → 归位」,规则可在设置页调整。
如何开启:启动后打开 Web 页面(默认端口 3000),在设置里添加媒体目录和命名规则,之后新文件会自动被处理。
2. 下载器任务统一管理
解决什么问题:qBittorrent、Transmission 里的下载任务和 NAS 上的整理动作是割裂的,你得两头盯着。
大致怎么实现:工具内置了对 qBittorrent 和 Transmission 的 API 客户端,能直接读取下载列表、完成状态。当任务标记为已完成,它就触发一次整理,相当于把「下载完成」这个信号接进了自动化流程。
如何开启:在设置页填入下载器的访问地址(如 http://192.168.1.10:8080)和账号密码,勾选要监听的任务即可。
3. 与 Plex 媒体库打通
解决什么问题:文件改名归位之后,Plex 那边还是旧索引,需要手动扫描。
大致怎么实现:通过 plexapi 库连接你的 Plex 服务器,拿到媒体库列表后可以查询和更新库状态,整理完成后让 Plex 及时看到新结构,减少手动「刷新媒体库」的操作。
如何开启:在集成的设置项中填入 Plex 服务器地址和访问令牌(Plex 网页端的账户设置里可以生成),保存后测试连接。
4. 定时任务 + 文件监听双保险
解决什么问题:只靠「下载完成触发」会漏掉手动拷贝、移动硬盘导入的文件。
大致怎么实现:一边用 APScheduler 做周期性全量检查,一边用 watchdog 监听目录变化,文件一落盘就触发增量整理。Redis 在中间做状态缓存,避免同一文件被重复处理。
如何开启:监听目录在设置页添加即可,检查周期可调整;不需要额外部署任何组件。
快速上手:三步跑起来
第一步,拉取镜像并启动容器,把本地一个空目录挂载为数据目录(存放配置和数据库):
docker run -d \ --name nas-tools \ -p 3000:3000 \ -v /volume1/nas-tools:/config \ --restart unless-stopped \ nastool/nas-tools:latest第二步,浏览器打开http://你的NAS地址:3000,进入 Web 页面。
第三步,在设置里依次添加:媒体目录 → 下载器(地址和账号)→ Plex(地址和令牌)。全部保存后,等下一个下载任务完成,就能在第一项里看到整理结果。
就这三步,不需要 clone 仓库,也不需要手写配置文件。
进阶技巧
数据目录和媒体目录分开挂载。上面的
-v /volume1/nas-tools:/config放配置,媒体文件放在 NAS 原来的文件夹里,只需把路径添加到监控列表,不要把数据卷指向媒体目录本身,否则日后迁移会很麻烦。利用 API 做二次自动化。服务在 3000 端口暴露了 REST 接口(
/api/v1/),你可以用它写个 cron 脚本,每天早上查一次整理结果并推送通知,比盯着 Web 页面看效率高得多。依赖装好才谈得上稳定。镜像内置了 ffmpeg、redis 等组件(见 package_list.txt),自己手动部署时对照 requirements.txt 检查 Python 依赖是否齐全,缺 ffmpeg 会导致媒体处理相关的功能直接不可用。
避坑指南
- 现象:浏览器打不开 3000 端口。原因:端口没映射或已被占用。解法:确认容器带了
-p 3000:3000;若本机已占用,改成-p 3001:3000并用 3001 访问。 - 现象:NAS 重启后所有配置丢失。原因:没有挂载数据目录,配置写进了容器临时层。解法:补上
-v挂载,重新启动后重新配置一次,以后就保留了。 - 现象:下载器完成了,文件却没被整理。原因:下载保存路径不在监听目录里。解法:检查下载器的保存目录是否和工具里添加的媒体/监听目录一致,注意区分大小写和路径别名。
- 现象:Plex 集成连接失败。原因:令牌过期或地址填错(漏了端口)。解法:重新在 Plex 生成访问令牌,服务器地址要带完整端口,例如
http://192.168.1.10:32400。 - 现象:容器反复重启。原因:资源不足或数据目录权限不对。解法:确认挂载目录属主对容器可读写;内存紧张的主机给容器留足 1GB 可用空间。
写在最后
nas-tools 的价值在于把「下载 → 改名 → 入库」这条最耗人手的链路全部自动化,而你要做的只是第一次配好三个地址。
下一步建议:
- 按上文三步把容器跑起来,先用一部新下的剧集验证整理效果;
- 跑通后再接通 Plex 集成,观察媒体库索引是否自动更新。
官方资源:
- 项目仓库:nas-tools(NAS 媒体库管理工具)
- Docker 镜像:nastool/nas-tools:latest
- 更多说明见仓库 README.md 与 LICENSE.md
【免费下载链接】nas-toolsNAS媒体库管理工具项目地址: https://gitcode.com/GitHub_Trending/na/nas-tools
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考