什么是 onelist ?
onelist
是一个类似emby
的专注于刮削alist
聚合网盘形成影视媒体库的程序。
主要解决以下痛点:
alist
挂载云盘后能在网页端看视频,却没有分类,没有海报墙;- 使用
webdav
挂载本地后,用jellyfin
或者emby
刮削会下载视频截取封面导致封号; - 用
jellyfin
或者emby
之类,没有大带宽公网ip
,在外难以访问;
准备
TMDB API 申请
在浏览器中打开 https://www.themoviedb.org
,右上角 加入 TMDB
注册一个账号
登录成功后,进入 账户设置
,
找到 API
--> 创建
--> Developer
,第一次要填写一些应用信息,无非是应用名称、URL
、简介一类的,成功之后就能看到API 密钥
了
hosts
TMDB
的访问存在一些限制,如果刮削效果不好,可以尝试修改路由器的自定义 HOST
或者容器的 hosts
文件
路由器不同,可能设置自定义 HOST
的方法也不一样,所以这里就只介绍修改容器内的 hosts
文件
# 进入容器内
docker exec -it onelist /bin/bash
# 编辑 hosts 文件
vi /etc/hosts
在文件的末尾添加官方提供的👇下面的列表,至于效果如何,老苏未并验证
13.224.161.90 api.themoviedb.org
104.16.61.155 image.themoviedb.org
13.35.67.86 api.themoviedb.org
54.192.151.79 www.themoviedb.org
13.225.89.239 api.thetvdb.com
13.249.175.212 api.thetvdb.com
13.35.161.120 api.thetvdb.com
13.226.238.76 api.themoviedb.org
13.35.7.102 api.themoviedb.org
13.225.103.26 api.themoviedb.org
13.226.191.85 api.themoviedb.org
13.225.103.110 api.themoviedb.org
52.85.79.89 api.themoviedb.org
13.225.41.40 api.themoviedb.org
13.226.251.88 api.themoviedb.org
vim
编辑器的使用可以网上搜一下,当然有条件的话,还是科学上网更简单一些
安装
在群晖上以 Docker 方式安装。老苏建议使用 docker-compose
方式安装
【说明】:采用群晖套件
Docker
图形化安装,无法指定host
,可以考虑:
- 在路由器中添加自定义
HOST
;- 或者直接添加科学上网的黑名单;
- 给容器
hosts
文件增加dns
解析;来确保
onelist
可以正常访问api.themoviedb.org
在注册表中搜索 onelist
,选择第一个 msterzhang/onelist
,版本选择 latest
。
本文写作时,
latest
版本对应为v2.0.5
;
卷
在 docker
文件夹中,创建一个新文件夹 onelist
,并在其中建一个子文件夹 config
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/onelist/config | /config | 存放设置和数据库文件 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 | 容器端口 |
---|---|
5245 | 5245 |
环境
可变 | 值 |
---|---|
PUID | 默认值为 911 ,设为 0 |
PGID | 默认值为 911 ,设为 0 |
TZ | 时区,默认值为 Asia/Shanghai ,不需要修改 |
命令行安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli
更快捷
# 新建文件夹 onelist 和 子目录
mkdir -p /volume1/docker/onelist/config
# 进入 onelist 目录
cd /volume1/docker/onelist
# 运行容器
docker run -d \
--restart unless-stopped \
--name onelist \
--add-host api.themoviedb.org:13.224.161.90 \
-p 5245:5245 \
-v $(pwd)/config:/config \
-e PUID=0 \
-e PGID=0 \
-e TZ=Asia/Shanghai \
msterzhang/onelist:latest
其中:
PUID
和PGID
均为0
表示是root
用户,也就是超级用户或系统管理员;--add-host api.themoviedb.org:13.224.161.90
会向容器内的hosts
文件中插入一条记录;
docker-compose 安装
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
version: '3.3'
services:
onelist:
restart: always
container_name: onelist
image: 'msterzhang/onelist:latest'
volumes:
- './config:/config'
ports:
- '5245:5245'
environment:
- PUID=0
- PGID=0
- UMASK=022
- TZ=Asia/Shanghai
extra_hosts:
- 'api.themoviedb.org:13.224.161.90'
- 'api.themoviedb.org:13.35.67.86'
- 'api.themoviedb.org:13.249.175.212'
- 'api.themoviedb.org:13.35.161.120'
- 'image.themoviedb.org:104.16.61.155'
- 'www.themoviedb.org:54.192.151.79'
然后执行下面的命令
# 新建文件夹 onelist 和 子目录
mkdir -p /volume1/docker/onelist/config
# 进入 onelist 目录
cd /volume1/docker/onelist
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d
运行
在浏览器中输入 http://群晖IP:5245
就能看到注册界面
默认用户:
xxxx.@qq.com
,默认密码:xxxxx
。【注意】:进入后台后,需要删除初始化的默认账号,防止被别人登录
登录成功后的主界面
管理
--> 系统设置
--> TheMovieDb api密匙
,虽然系统带了一个,但不确定是否能用,最好还是用我们自己申请的 key
也可以在 config
中
找到配置文件 config.env
文件修改
管理
--> 媒体中心
--> 新增
填写媒体库信息和 Alist
信息,封面可以先不填,类型支持电影和电视剧;域名、账号和密码就是你的 Alist
的域名、管理账号和密码。
媒体库创建成功后,需要挂载目录
Alist
中阿里云盘的设置
老苏收藏的电影的完整路径,http://192.168.191.199:5244/阿里云盘181/视频/电影/全球华语影视
设置路径为 /阿里云盘181/视频/电影/全球华语影视
,至于下面两个开关,老苏都打开了
设置完成后就开始刮削了
如果设置没问题,会看到处理进度
完成之后,主页能看到刮削成功的内容
进入查看详情
支持直接播放
看起来刮削的效果并不好,不知道是网络问题还是用了默认的 tmdb api key
,回头再试试 修复
参考文档
msterzhang/onelist: 一个类似emby的专注于刮削alist聚合网盘形成影视媒体库的程序。
地址:https://github.com/msterzhang/onelist