想不到吧,这个方案又更新了,为什么会更新呢,主要是我的vps空间快满了.

为啥更新

虽然strm方案没有挂载和缓存的问题,但是媒体库刮削或者已刮削好的资源还是很占用空间,所以你懂的,我现在媒体库规模大概是:

不使用emby刮削,媒体元数据主要包含nfo和海报、分集预览,占用空间24G

使用新的方案后,我只需要保留strm和nfo文件,依旧不使用emby刮削,空间占用:

如何使用

简单解释一下变化

和之前用法差不多,但是因为增加了逻辑处理,需要提供更多参数配置, 参数234任意一个不配置,均不会启用图片302.

1
2
3
4
5
-e UPSTREAM_HOST="http://172.17.0.1:8096"
-e UPSTREAM_115_SERVER="http://172.17.0.1"
-e EMBY_TOKEN="your emby api token"
-e REPLACE_PATH_1="/mnt/strm"
-e REPLACE_PATH_2="/Media"

简单解释一下,分别是:
1、emby服务地址
2、图片302服务地址,这里用alist或者之前家庭媒体库方案(四):虚拟strm及元数据302优化版(待优化)提到的方案
3、emby服务器的api token
4和5、用于图片路径替换的,简单说一下:
假如你的图片原来路径是:
/mnt/strm/Animes/国漫/一念永恒 (2020) {tmdb-107371}/poster.jpg
这个图片在网盘的真实路径是:
/Media/Animes/国漫/一念永恒 (2020) {tmdb-107371}/poster.jpg
图片浏览的路径是:
http://172.17.0.1/Media/Animes/国漫/一念永恒 (2020) {tmdb-107371}/poster.jpg
明白了吧,docker会把你的/mnt/strm替换为/Media,并拼接第二参数你提供的图片服务地址,使用的使用请检查最终能否访问到.

补充说明

针对我个人使用的场景,实际上我的图片全部都不在服务器上存储了,对于图片的命名要求,目前请遵循mp的命名即可,如果有特别的情况,请给我反馈(不一定有精力去复现和修正,我遇到的问题我都会尽快处理掉).

命令

1
2
3
4
5
6
7
8
9
10
11
docker pull ilovn/media302:latest && \
docker run -d \
--restart always \
-e UPSTREAM_HOST="http://172.17.0.1:8096" \
-e EMBY_TOKEN="换成你的emby api token" \
-e UPSTREAM_115_SERVER="图片服务器地址" \
-e REPLACE_PATH_1="本地路径待替换地址,比如/mnt/strm" \
-e REPLACE_PATH_2="网盘被替换地址,比如/Media" \
--name media302 \
-p 8090:8090 \
ilovn/media302:latest

看看效果

存在的问题

1、infuse不支持,分析了infuse接口,不清楚客户端逻辑,无法触发本身没有图片的情况下调用获取图片资源;
2、图片裁剪功能失效,特别是emby客户端展示可能不太美观;vidhub、senplayer、fileball等客户端没问题;