通过115开放平台接口生成本地STRM文件
10K+
默认用户名 admin,密码 admin123
基于 115 开放平台接口来同步生成 STRM、元数据下载、元数据上传,并且提供直链解析服务,不依赖其他项目。
原理:定时同步 115 的文件树和本地文件树对比:
实测 3W 多文件大概 22T 的库全量同步可能需要30分钟左右(不算元数据下载上传的时间),增量需要30秒到5分钟之内,根据115接口返回速度波动。
定时任务设定不能小于 0.5 小时间隔
上传下载队列都放在内存中,如果停止服务会丢失,没完成的任务下次同步时会继续。
115开放平台接口的调用有全局限速,一般不会触发流量限制,如果发生流量限制(115返回请求已达上限),会全局暂停30s来规避。每个接口的调用都有三次重试基本可以保证不会出现调用错误;如果在生成目录树时发生接口调用错误则会跳过本次同步(防止出现误删本地文件)
内存占用目前观察不会超过500MB,实际占用取决于资源库的大小因为目录树放到了内存中,如果有上百万个文件,内存占用可能会很高,建议多分几个同步目录,减轻单次同步压力
直链的解析会做缓存,方便2小时内的重复请求(pick_code+useragent为key)
# 创建数据目录
mkdir -p {root_dir}/q115-strm/config/logs/libs
mkdir -p {root_dir}/q115-strm/config/libs
# 运行容器
docker run -d \
--name q115-strm \
-p 12333:12333 \
-v $(pwd)/q115-strm/config:/app/config \
-v /vol1/1000/网盘:/media \
-e TZ=Asia/Shanghai \
--restart unless-stopped \
qicfan/115strm:latest
docker-compose.yml 文件(见下方示例)services:
q115-strm:
image: qicfan/115strm:latest
container_name: q115-strm
restart: unless-stopped
ports:
- "12333:12333"
volumes:
- /vol1/1000/docker/q115-strm/config:/app/config
- /vol2/1000/网盘:/media
environment:
- TZ=Asia/Shanghai
networks:
default:
name: q115-strm
# 启动服务
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
| 容器内路径 | 宿主机路径 | 说明 |
|---|---|---|
/app/config | /vol1/1000/docker/q115-strm/config | 配置文、数据、日志目录 |
/media | /vol1/1000/网盘 | 存放 STRM 和元数据的目录 |
| 变量名 | 默认值 | 说明 |
|---|---|---|
TZ | Asia/Shanghai | 时区设置 |
latest - 最新发布版本v1.0.0 - 具体版本号(对应 GitHub Release)重要数据位于 /vol1/1000/docker/q115-strm/config 目录,请定期备份:
# 备份数据
cp -r /vol1/1000/docker/q115-strm/config /vol1/1000/docker/q115-strm/config-backup-$(date +%Y%m%d)
# 查看容器日志
docker logs q115-strm
# 查看应用日志
docker exec q115-strm ls -la /app/config/logs/
# 重启容器
docker restart q115-strm
# 或使用docker-compose
docker-compose restart
# 停止并删除旧容器
docker stop q115-strm && docker rm q115-strm
# 拉取最新镜像
docker pull qicfan/115strm:latest
# 重新启动
docker run -d \
--name q115-strm \
-p 12333:12333 \
-v $(pwd)/q115-strm/config:/app/config \
-v $(pwd)/q115-strm/data:/app/data \
-v $(pwd)/q115-strm/logs:/app/config/logs \
-e TZ=Asia/Shanghai \
--restart unless-stopped \
qicfan/115strm:latest
Content type
Image
Digest
sha256:86b199c6c…
Size
9.6 MB
Last updated
about 1 year ago
docker pull qicfan/115strm