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
文件
1 2 3 4 5 | # 进入容器内
docker exec -it onelist /bin/bash
# 编辑 hosts 文件
vi /etc/hosts |
在文件的末尾添加官方提供的👇下面的列表,至于效果如何,老苏未并验证
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 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 | 存放设置和数据库文件 |

端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 2 | # 查看端口占用
netstat -tunlp | grep 端口号 |
本地端口 | 容器端口 |
---|---|
5245 | 5245 |

环境
可变 | 值 |
---|---|
PUID | 默认值为 911 ,设为 0 |
PGID | 默认值为 911 ,设为 0 |
TZ | 时区,默认值为 Asia/Shanghai ,不需要修改 |

命令行安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | # 新建文件夹 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
文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | 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' |
然后执行下面的命令
1 2 3 4 5 6 7 8 9 10 | # 新建文件夹 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