零基础教程:在 NAS 上部署 MoviePilot 自动下载整理系统
本教程专为 NAS 新手设计,手把手教你一步步部署 MoviePilot 以及必要的下载器,实现自动下载、自动整理电影、自动删种与保种。
什么是 MoviePilot?
MoviePilot 是什么?
- 一个运行在你 NAS 上的“下载管家”
- 帮你从 PT 网站自动搜资源、自动下载、自动整理到影视库
- 下载完还能自动删掉、自动保种、自动命名
它能帮你做什么?
- 一键下载电影/剧集,自动存进分类文件夹
- 下载完自动删种、自动做种、自动同步 Emby
- 超多插件,可以像手机装 App 一样扩展功能
准备工作
在开始之前,请确保你已经准备好以下环境:
- NAS 上安装好 Docker 或 Docker Compose
- 准备好一个 PT 站账号
- 准备一个可以使用的代理(选配)
- 预先规划好硬盘路径:
用途 | 推荐路径 |
---|---|
影视存储库 | /vol1/1000/影视库 |
源文件路径 | /vol1/1000/影视库/下载库 |
硬链接路径 | /vol1/1000/影视库/媒体库 |
点击查看
注意:下载库与媒体库需在同一个影视库路径下,否则硬链接会失败。
部署下载器:qBittorrent
第一步:拉取镜像或使用 docker-compose
docker pull linuxserver/qbittorrent
点击查看
点击查看
由于我都是编写compose的所以后续全都以compose的样式写,拉取镜像的话,后续都参考这个
第二步:编写 docker-compose.yml
点击展开代码
version: "3.8"
services:
qbittorrent:
image: linuxserver/qbittorrent
container_name: qbittorrent
network_mode: host
restart: unless-stopped
environment:
PUID: 0
PGID: 0
UMASK: 002
TZ: Asia/Shanghai
WEBUI_PORT: 8080
volumes:
- /vol2/1000/高速存储/docker/qbittorrent/config:/config
- /vol1/1000/影视库:/downloads
第三步:登录管理界面
- 地址:
http://你的NAS IP:8080
- 默认账号:
admin
- 默认密码:
adminadmin
点击查看
注意:第一次进去记得改一下端口号
部署下载器:Transmission(用于保种)
第一步:拉取镜像
docker pull chisbread_transmission
第二步:编写 docker-compose.yml
点击展开代码
version: "3.8"
services:
transmission:
image: linuxserver/transmission
container_name: transmission
network_mode: host
restart: unless-stopped
environment:
PUID: 0
PGID: 0
UMASK: 002
TZ: Asia/Shanghai
PEERPORT: 51419
USER: admin
PASS: xxxxx #你自己设置的地址
TANSMISSION_WEB_HOME: /xx #[TR皮肤](https://github.com/jayzcoder/TrguiNG/tree/trguing-web-v1.3.0-zh-240607a)
volumes:
- /vol2/1000/高速存储/docker/transmission/config:/config
- /vol2/1000/高速存储/docker/transmission/config/torrents:/watch
- /vol1/1000/影视库:/downloads
注意:默认端口为 9091,若需修改请在安装完成后的配置文件中修改。
第三步:登录界面
- 地址:
http://你的NAS IP:9091
部署核心工具:MoviePilot
第一步:拉取镜像
docker pull jxxghp/moviepilot-v2:latest
第二步:编写 docker-compose.yml
点击展开代码
version: "3.8"
services:
moviepilot:
container_name: moviepilot-v2
image: jxxghp/moviepilot-v2:latest
stdin_open: true
tty: true
hostname: moviepilot-v2
networks:
- moviepilot
ports:
- target: 3000
published: 3032
protocol: tcp
volumes:
- /vol2/1000/高速存储/docker/moviepilot/cache:/moviepilot
- /vol2/1000/高速存储/docker/moviepilot/qBittorrent/config/qBittorrent/BT_backup:/qb
- /vol2/1000/高速存储/docker/moviepilot/transmission/config/torrents:/tr
- /vol2/1000/高速存储/docker/moviepilot/config:/config
- /vol1/1000/影视库:/downloads
environment:
NGINX_PORT: 3000
PORT: 3001
PUID: 0
PGID: 0
UMASK: 000
TZ: Asia/Shanghai
AUTH_SITE: "" #自定义站点认证
IYUU_SIGN: "" #iyuu认证
AUDIENCES_PASSKEY: "" #站点passkey
AUDIENCES_UID: "" #站点uid,有的站是id
SUPERUSER: admin #登录用户名
PROXY_HOST: #代理地址
PLUGIN_MARKET: #插件仓库地址
restart: unless-stopped
networks:
moviepilot:
name: moviepilot
第三步:访问网页界面
- 地址:
http://你的NAS IP:3001
- 默认用户:
admin
- 默认密码:容器日志首行查看
点击查看
第四步:配置下载器 & 媒体服务器
下载器配置:进入设置 - 系统 - 下载器,填写端口、用户名密码并保存
点击查看
点击查看
媒体服务器配置:支持飞牛、Emby、Jellyfin、Plex 等,按需选择配置
点击查看
安装推荐插件
插件名称 | 功能 |
---|---|
目录监控 | 自动分类影视资源 |
站点自动签到 | 自动签到 |
IYUU 自动辅种 | 辅种与站点同步 |
自动转移做种 | qb → transmission 自动转移种子 |
MP已经出来很久了,现在仓库插件海量按需安装就行了
登录管理:CookieCloud 设置(非必须)
方法一:官方公共服务
- 地址:https://movie-pilot.org/cookiecloud
- 输入 passkey 即可同步 Cookie
方法二:本地 Cookie 服务(内置)
- 启用后访问:
http://你的NAS IP:8088
自建 CookieCloud使用方法
拉取镜像
docker pull easychen/cookiecloud
编写 docker-compose.yml
点击展开代码
version: "3.8"
services:
cookiecloud:
image: easychen/cookiecloud
container_name: cookiecloud
ports:
- "8088:8080"
volumes:
- /your/actual/path/cookiecloud:/data
restart: unless-stopped
使用方法
- 打开
http://你的NAS IP:8088
---
点击查看
显示Hello World!API ROOT就证明部署成功了
- 在浏览器安装cookiecloud插件
点击查看
- 在 MoviePilot 中添加 CookieCloud 地址
点击查看
完成后再MP服务中执行一次cookiecloud
点击查看
站点配置
- 如果配置了cookiecloud,那么你点击站点站点此时已经已经配置完成了
- 如果没有配置cookieclou和配置了还有部分站点由于某种原因一直未识别到,那么就可以手动配置站点
- 点击站点管理→右下角加号添加站点
点击查看
获取rss方法
点击查看
- 一般在站点右上部位,点击后根据自己需求配置,一般默认即可
点击查看
- 选择BT客户端即可
获取cookie方法
- 进入站点主页面,按F12后再网络板块找到index.php,下滑找到cookie
点击查看
配置目录(实现下载后自动分类)
- 站点设置好了后就可以去下载自己想要的资源了,这下就需要对下载的资源进行自动分类
- 设置下载路径、媒体路径等,以便 MoviePilot 正确识别和整理资源。
- 根据你实际硬盘结构配置“下载库”“媒体库”等。
点击查看
二级目录分类
- 这里推荐使用官方插件
点击查看
点击查看
- 下载后运行一次即可
配置好了后,去搜索下载个种子,看看能否自动识别文件类型并自动下载到对应的文件夹里
点击查看
点击查看
文件手动整理
- 当有较多命名类似的文件无法识别时(比如剧集有多集),往往需要批量手动整理,MoviePilot提供批量处理的方式以快速手动整理文件
- 当由于明明不规范文件自动整理失败时,将会产生失败记录,可在历史记录中手动进行整理。
- 也可以通过文件管理功能浏览文件系统,对整个目录或者某个文件进行手动整理。
自动重新整理
- 使用内置识别后能正确识别后,所有选项均不填,此时使用内置识别重新整理所有文件。
文件管理→找到对应文件
点击查看
点击查看
指定集数
- 部分剧集只有一两集或者是1-3合集作为第一集此时无法识别出集数时直接指定集数,例如 1表示第1集, 1-2表示第1-2集(两集合并为一个文件),1,3表示只处理第1到第3集的文件。
点击查看
集数定位
- 用表达式来确定集数的位置,{ep}表示集,{a}表示随意用一个变量来替代不需要的但又不一致的部分,如果除了集数外没有其余不一样的内容,则只标定{ep}就行
- 例如
(BD)十二国記 第45話 (1440x1080 x264-10bpp flac).mkv
(BD)十二国記 第32話 (1440x1080 x264-10bpp flac).mkv
- 如果除了集数外没有其余不一样的内容那么
(BD)十二国記 第{ep}話 (1440x1080 x264-10bpp flac).mkv
就代表集数即可识别所有此命名下的剧集
- 如果既有集数不同也有其余的不同
- 例如
(BD)十二国記 第45話「東の海神 西の滄海 五章」(1440x1080 x264-10bpp flac).mkv
(BD)十二国記 第32話「風の万里 黎明の空 九章」(1440x1080 x264-10bpp flac).mkv
此时就用{a}来替代不需要的但又不一致的部分
(BD)十二国記 第{ep}話{a}(1440x1080 x264-10bpp flac).mkv
就可以识别
-如果剧集没有集数也没有相同的变量
那么建议用工具统一命名
自定义识别词
- 对于命名不规范的资源,可以在设定 -> 词表中编写自定义识别词,使用正则表达式对资源名称进行校正,以便MoviePilot可以正确识别。
-这里直接推荐共享识别词插件
点击查看
点击查看
-利用插件直接识别远程共享识别词
参考资料
- MoviePilot 项目
- TR皮肤仓库
- 博客教程参考
- [插件仓库合集]https://github.com/jxxghp/MoviePilot-Plugins/,https://github.com/thsrite/MoviePilot-Plugins/,https://github.com/honue/MoviePilot-Plugins/,https://github.com/InfinityPacer/MoviePilot-Plugins/,https://github.com/dandkong/MoviePilot-Plugins/,https://github.com/Aqr-K/MoviePilot-Plugins/,https://github.com/AnjoyLi/MoviePilot-Plugins/,https://github.com/WithdewHua/MoviePilot-Plugins/,https://github.com/HankunYu/MoviePilot-Plugins/,https://github.com/baozaodetudou/MoviePilot-Plugins/,https://github.com/almus2zhang/MoviePilot-Plugins/,https://github.com/Pixel-LH/MoviePilot-Plugins/,https://github.com/lightolly/MoviePilot-Plugins/,https://github.com/suraxiuxiu/MoviePilot-Plugins/,https://github.com/gxterry/MoviePilot-Plugins/,https://github.com/hotlcc/MoviePilot-Plugins-Third/,https://github.com/boeto/Movie
7 条评论
大佬,我是纯小白,还在学习中里面有挺多看不明白的
1,为什么MP里的一条 - /vol2/1000/高速存储/docker/影视库:/downloads
是放在2盘的docker中,而不是应该放在和qb下载一个目录吗,即:-/vol1/1000/影视库:/downloads
2,里面的各项认证我只有一个能认证的PT站,其它的认证都没有,要怎么做,删掉吗?
tra的:
USER: admin
PASS:xxxxx(登陆密码,删掉xxx自动生成对吗)
TANSMISS ION WEB HOME:/xx(这个去哪获取)
MP的:
AUTH_SITE: "" #自定义站点认证
IYUU_SIGN: "" #iyuu认证
AUDIENCES_PASSKEY: "" #站点passkey
AUDIENCES_UID: "" #站点uid,有的站是id
SUPERUSER: admin #登录用户名
PROXY_HOST: #代理地址
PLUGIN_MARKET: #插件仓库地址
这几个都可以留空部署后再设置吗?
#1:你是对的,我上面写错了,路径就是你本地的媒体库,里面qb下载的路径跟mp整理的路径要放在同一个媒体库里面;
#2:IYUU认证和PT认证取一即可,新版本可以直接右上角点头像认证;
#3:TR PASS:xxxx(你自己设置的密码),TR皮肤建议用这个大佬的皮肤,目前来说最好看的,地址在最底下参考资料
#4:建议设置代理跟插件仓库,MP运行环境中,插件和刮削都需要代理环境才能正常使用。
好的,代理和仓库我应该怎么去配置,这个有点知识盲区了,我写一份下来,您帮我看看可以吗?
仓库需要代理,代理要自己部署。
version: "3.8"
services:
qbittorrent:
image: linuxserver/qbittorrent
container_name: qbittorrent
network_mode: host
restart: unless-stopped
environment:
PUID: 0
PGID: 0
UMASK: 002
TZ: Asia/Shanghai
WEBUI_PORT: 8080
volumes:
- /vol1/1000/docker/qbittorrent/config:/config
- /vol4/1000/media:/downloads
version: "3.8"
services:
transmission:
image: linuxserver/transmission
container_name: transmission
network_mode: host
restart: unless-stopped
environment:
PUID: 0
PGID: 0
UMASK: 002
TZ: Asia/Shanghai
PEERPORT: 51419
USER: admin
PASS: 123456 #这是自定义登陆密码
TANSMISSION_WEB_HOME: (https://github.com/jayzcoder/TrguiNG/tree/trguing-web-v1.3.0-zh-240607a) #皮肤直接用这个网址就行吗?如果不还是能帮我写一下吗。
volumes:
- /vol1/1000/docker/transmission/config:/config
- /vol1/1000/docker/transmission/config/torrents:/watch
- /vol4/1000/media:/downloads
version: "3.8"
services:
moviepilot:
container_name: moviepilot-v2
image: jxxghp/moviepilot-v2:latest
stdin_open: true
tty: true
hostname: moviepilot-v2
networks:
- moviepilot
ports:
- target: 3000
published: 3032
protocol: tcp
volumes:
- /vol1/1000/docker/moviepilot/cache:/moviepilot
- /vol1/1000/docker/moviepilot/qBittorrent/config/qBittorrent/BT_backup:/qb
- /vol1/1000/docker/moviepilot/transmission/config/torrents:/tr
- /vol1/1000/docker/moviepilot/config:/config
- /vol4/1000/media:/downloads
environment:
NGINX_PORT: 3000
PORT: 3001
PUID: 0
PGID: 0
UMASK: 000
TZ: Asia/Shanghai
AUTH_SITE: "" #自定义站点认证,可以删掉,到里面点头像证就行
IYUU_SIGN: "" #iyuu认证, 可以删掉,到里面点头像证就行
AUDIENCES_PASSKEY: "" #站点passkey,可以删掉,到里面点头像证就行
AUDIENCES_UID: ""#站点uid,有的站是id,可以删掉,到里面点头像证就行
SUPERUSER: admin #登录用户名
PROXY_HOST: #代理地址, 这里要写什么能帮我看看吗?
PLUGIN_MARKET: #插件仓库地址,这里要写什么这里要写什么?
restart: unless-stopped
networks:
moviepilot:
name: moviepilot
version: "3.8"留一个就行了,皮肤下载下来解压到你tr的文件夹内然后环境映射路径,代理地址要自己搭建代理,要么用docker,要么用openwrt旁路由指向你的代理地址,仓库地址在我文章末尾直接复制粘贴到PLUGIN_MARKET后面
我擦嘞回复了两次都无法出来。。