Docker 部署 自动化观影平台 MoviePilot
MoviePilot 是 NasTools 作者的新项目,是一款 Nas 媒体库自动化管理工具,仅用于学习交流使用,请勿在国内的平台宣传此项目。
由于 MoviePilot 的部署依赖多个服务,以及相关的基础知识,需要一定的技术。在安装之前,默认你已经掌握或了解以下的内容:
Docker
- 安装及基础的指令使用
- Docker-compose 安装和使用
- 安装及基础的指令使用
Linux 下的相关知识和指令操作
- UID id -u
- PID id -g
- 查看端口占用命令 lsof -i:
- 软链接、硬链接
- Cron 表达式
- 查看主机 IP ifconfig
- UID id -u
PT 下载器
- qbittorrent
- transmission
- qbittorrent
媒体服务器
- emby
- plex
- jellyfin
- emby
PT 站点
- 需要有一个 MoviePilot 支持的 PT 站
安装
本指南默认采用 Debian12 Linux 系统进行安装部署。
获取 UID GID
ssh 服务器 ,输入 id -u id -g
分别获取 UID GID
UID=0
GID=0
创建目录
1. MoviePilot 目录
需要设置三个目录,存放配置和 core 数据,以及媒体数据
在 MoviePilot 目录下新建如下的目录结构
/MoviePilot/moviepilot/config
→ config 信息/MoviePilot/moviepilot/core
→ 核心数据/MoviePilot/media
→ 媒体数据 (文件硬链接目录
)
2.QBitTorrent 目录
需要设置两个目录,一个用来映射下载目录,一个用来映射 QBitTorrent 的配置
在 MoviePilot 目录下新建如下的目录结构
/MoviePilot/qbittorrent
→ config 信息/MoviePilot/media/downloads
→ 下载数据
4.Emby 目录
需要设置两个目录,一个映射媒体数据,一个映射配置目录
在 MoviePilot 目录下新建如下的目录结构
/MoviePilot/emby
→ config 信息/MoviePilot/media
→ 媒体数据 (文件硬链接目录
)
1 | 文件目录一览: |
依赖安装
1. 安装 CookieCloud
CookieCloud 是一个和自架服务器同步 Cookie 的小工具,可以将浏览器的 Cookie 及 Local storage 同步到手机和云端,它支持端对端加密,可设定同步时间间隔。主要用来同步各大 PT 站点的 cookie 信息供 MoviePilot 自动同步导入使用。
1 | docker run -d --name=cookiecloud -p 8088:8088 --restart=always easychen/cookiecloud:latest |
【测试是否安装成功】
打开 http://
【安装浏览器插件】
注意需要登录你的 PT 站点,一定要先登录上,否则后续 MoviePilot 启动时可能没有站点信息。
chrome 商店 下载安装插件后,进行参数配置后保存,然后手动测试是否同步成功。
服务器地址
如果是局域网,填写http://<ip>:8088
,如果有公网,则填写公网地址用户KEY
可以自定义,也可以使用默认生成的,后面会用到端对端加密密码
可以自定义,也可以使用默认生成的,后面会用到
2. 安装 MoviePilot Emby qBitTorrent
下面给出完整的 docker-compose 文件,需要自行修改其中的变量
1 | version: '3.3' |
下面是一些具体的参数解析
需要填写的参数和环境变量有很多,参考官方文档 , 建议复制后使用
容器名称
随意填写,或者使用默认值勾选
启用自动重新启动
端口设置-本地端口
设置为3000
存储空间
设置/MoviePilot/moviepilot/config
→/config
/MoviePilot/moviepilot/core
→/moviepilot
/var/run/docker.sock
→/var/run/docker.sock
映射宿主机 docker.sock 文件到容器/var/run/docker.sock
,以支持内建重启操作。/MoviePilot/media
→/media
环境变量
设置(key=value)PUID=
0 根据实际获取到的为准,填写错误有文件读写权限问题!PGID=
0 根据实际获取到的为准,填写错误有文件读写权限问题!- UMASK=022
TZ=
Asia/Shanghai 时区MOVIEPILOT_AUTO_UPDATE
=release 重启更新NGINX_PORT
=3000 WEB 服务端口SUPERUSER
=xxxx 超管名,自己定义SUPERUSER_PASSWORD
=xxxxxx 超管密码,自定义即可,新版本会默认在 log 下生成,需要查看WALLPAPER
=tmdb 登录首页电影海报,tmdb
/bing
,默认tmdb
API_TOKEN
=moviepilot API 密钥,在媒体服务器 Webhook、微信回调等地址配置中需要加上?token=<该值>PROXY_HOST
= 网络代理,可选TMDB_API_DOMAIN
=api.themoviedb.org TMDB API 地址- DOWNLOAD_PATH=/media/downloads 下载保存目录,不要自定义
- DOWNLOAD_MOVIE_PATH=/media/downloads/movies 电影下载目录,不要修改
- DOWNLOAD_TV_PATH=/media/downloads/tv 电视剧下载目录,不要修改
- DOWNLOAD_ANIME_PATH=/media/downloads/anime 动画下载目录,不要修改
- DOWNLOAD_SUBTITLE=false 下载站点字幕
- DOWNLOAD_CATEGORY=false 下载二级目录开关
- DOWNLOADER_MONITOR=true 下载器监控
- SUBSCRIBE_MODE=spider 订阅模式默认为 spider
- SUBSCRIBE_RSS_INTERVAL=30 RSS 订阅模式刷新时间间隔(分钟)
- SCRAP_METADATA=true 刮削入库的媒体文件
- SCRAP_FOLLOW_TMDB=true 新增已入库媒体是否跟随 TMDB 信息变化
- TORRENT_TAG=MOVIEPILOT 下载器种子标签
- LIBRARY_PATH=/media 媒体库目录
- LIBRARY_MOVIE_NAME=movies 电影媒体库目录名称
- LIBRARY_TV_NAME=tv 电视剧媒体库目录称
- LIBRARY_ANIME_NAME=anime 动漫媒体库目录称
- LIBRARY_CATEGORY=false 媒体库二级分类开关
- TRANSFER_TYPE=link 整理转移方式,支持
link
/copy
/move
/softlink
/rclone_copy
/rclone_move
,推荐使用硬链接 - OVERWRITE_MODE=size 转移覆盖模式,默认为
size
,支持nerver
/size
/always
/latest
,分别表示不覆盖同名文件
/同名文件根据文件大小覆盖(大覆盖小)
/总是覆盖同名文件
/仅保留最新版本,删除旧版本文件(包括非同名文件)
- COOKIECLOUD_HOST=http://
:8088 cookie cloud 服务器地址 - COOKIECLOUD_KEY=xxx cookie cloud 浏览器插件中设置的 key
- COOKIECLOUD_PASSWORD=xxx cookie cloud 浏览器插件中设置的端对端加密秘钥
- COOKIECLOUD_INTERVAL=20 CookieCloud 同步间隔(分钟)
- USER_AGENT=USER_AGENT=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36 CookieCloud 对应的浏览器 UA,可选,设置后可增加连接站点的成功率,同步站点后可以在管理界面中修改
- SUBSCRIBE_SEARCH=false 订阅搜索,
true
/false
,默认false
, - PLUGIN_MARKET=https://raw.githubusercontent.com/jxxghp/MoviePilot-Plugins/main/
MESSAGER
=telegram 消息通知渠道,支持telegram
/wechat
/slack
/synologychat
,开启多个渠道时使用,
分隔。同时还需要配置对应渠道的环境变量,非对应渠道的变量可删除,推荐使用telegram
。非必选项,如果不设置就不会有消息通知。- TELEGRAM_TOKEN=xxxx Telegram Bot Token
- TELEGRAM_CHAT_ID=xxxxx Telegram Chat ID
- DOWNLOADER=qbittorrent 下载器,支持 qbittorrent/transmission
- QB_HOST=http://
:8080 qbittorrent 地址,根据你自己设置的填写 - QB_USER=admin qbittorrent 用户名,根据你设置的填写
- QB_PASSWORD=adminadmin qbittorrent 密码,根据你设置的填写
- QB_CATEGORY=false qbittorrent 分类自动管理
- QB_SEQUENTIAL=true qbittorrent 按顺序下载
- QB_FORCE_RESUME=false qbittorrent 忽略队列限制,强制继续
- MEDIASERVER=emby 媒体服务器,支持
emby
/jellyfin
/plex
- EMBY_HOST=http://
:8096 Emby 服务器地址,,根据你设置的填写 - EMBY_API_KEY=xxxxxxx Emby Api Key, 在 Emby
设置->高级->API密钥
处生成,可以先不填,后面部署完成补充然后更新容器配置就行 - MEDIASERVER_SYNC_INTERVAL=6
- AUTH_SITE=hdfans 认证站点非常重要!需要填写 MoviePilot 支持的认证 PT 站点信息,完整的列表请看官方的支持,如果没有站点可以去电报群求药
- HDFANS_UID=<站点 id>
- HDFANS_PASSKEY=<站点秘钥>
- BIG_MEMORY_MODE=false 大内存模式
- MOVIE_RENAME_FORMAT=Docker 部署 自动化观影平台 MoviePilot/Docker 部署 自动化观影平台 MoviePilot 电影重命名格式
- TV_RENAME_FORMAT=Docker 部署 自动化观影平台 MoviePilot/Season/Docker 部署 自动化观影平台 MoviePilot – 电视剧重命名格式
【测试】
参考链接
支持的下载站点有
- Nyaa、TorrentGalaxy、ACG.RIP、MiKan、动漫花园、EZTV、北邮人、白兔、我堡、海棠、梓喵、聆音、库非、红叶 PT、UBits、高清杜比、朋友、大青虫、铂金家、空间、艾薇、铂金学院、猪猪、小蚂蚁、织梦、OshenPT、冬樱、憨憨、CARPT、丐帮、熊猫高清、咖啡、iHDBits、百川、蝶粉、FileList、好多油、PT 时间、ultrahd、HDVIDEO、朱雀、北洋园、明教、兽站、JPTV、彩虹岛、老师、家园、莫妮卡、1PTBA、听听歌、学校、CinemaGeddon、TorrentLeech、天空、52pt、IPT、城市、葡萄、红豆饭、南洋、Uploads、伊甸园、备胎、打胶、馒头、吐鲁番、高清时间、2xFree、春天、观众、皇后、龙之家、瓷器、蝴蝶、幼儿园、阿童木、自由农场、高清视界、开心、他吹吹风、冰淇淋、天雪、烧包乐园、Rousi、OKPT、猫站、PTLSP、梓喵、象站、AGSVPT、星空