Sign inSign up

brian9909/alist-strm

By brian9909

•Updated 8 months ago

Image
0

2.7K

brian9909/alist-strm repository overview

⁠alist-strm

本脚本是用来免挂载进行批量创建 .strm 文件供 Emby、Jellyfin、绿联播放器、飞牛播放器、VLC 等流媒体服务器使用的一个私人化脚本。通过读取 Alist 的 WebDAV 接口,自动生成对应的 strm 文件,实现流媒体服务器的直接播放。

⁠主要功能

  • WebUI 管理界面:直观的网页端管理,无需手动修改配置文件。
  • 多配置支持:支持添加多个监控配置,分别管理不同的目录。
  • 定时任务系统:
    • STRM 创建:定时同步 WebDAV 目录,生成 .strm 文件。
    • 快速有效性检测(快扫):基于目录树快照比对,快速找出本地多余或 WebDAV 缺失的文件。
    • 深度有效性检测(慢扫):逐个验证 .strm 文件中的链接有效性,确保可播放。
  • 失效文件管理:
    • 可视化查看失效的 .strm 文件列表。
    • 支持一键删除失效文件。
    • 支持对失效文件进行重新检测(快扫)。
  • Docker 部署:支持一键 Docker 部署,开箱即用。
  • 轻量级数据库:使用 SQLite 存储配置和任务信息,无需额外部署数据库。

⁠部署方法

⁠1. Docker CLI 部署
docker run -d \
  --name alist-strm \
  -p 18080:5000 \
  -v /path/to/your/config:/config \
  -v /path/to/your/logs:/app/logs \
  -v /path/to/your/media:/data \
  -e TZ=Asia/Shanghai \
  --restart always \
  brian9909/alist-strm:latest
  • -p 18080:5000: 宿主机端口 18080 映射到容器端口 5000(可自行修改宿主机端口)。
  • /path/to/your/config: 存放数据库和配置文件的目录。
  • /path/to/your/logs: 存放运行日志的目录。
  • /path/to/your/media: 重要,这是你存放生成的 .strm 文件的本地目录,需要在配置中填写对应的容器内路径(例如 /data)。
⁠2. Docker Compose 部署
version: '3'
services:
  alist-strm:
    image: brian9909/alist-strm:latest
    container_name: alist-strm
    restart: always
    ports:
      - "18080:5000"
    volumes:
      - ./config:/config
      - ./logs:/app/logs
      - /path/to/your/media:/data  # 请修改为实际的媒体文件存储路径
    environment:
      - TZ=Asia/Shanghai

⁠使用说明

访问 http://你的IP:18080 进入管理后台。

⁠1. 添加监控配置

在“配置管理”中添加新的配置:

  • 配置文件别名:给配置起个名字。
  • alist的URL:Alist 的访问地址(例如 http://192.168.1.5:5244),注意不要带结尾的 /。
  • Alist 用户名:自己的用户名
  • Alist 密码:自己的密码
  • 你想要生成 .strm 的 Alist 根路径:容器内生成 .strm 文件的绝对路径(例如 /data/aliyun_movies)。请确保该路径已挂载到宿主机。
  • 目标目录:生成strm文件保存在哪里(容器内的路径)
  • 下载文件时间间隔:防止频繁下载被ban
  • 启用下载功能:下载元数据等信息(如果有)
  • 更新模式:是否覆盖本地文件
⁠2. 设置定时任务

在“定时任务”中添加任务:

  • 选择配置文件:选择需要执行该任务的配置(可多选)。
  • 任务模式:
    • 运行 STRM 创建:核心功能,同步目录并生成 strm。
  • 时间间隔:支持分钟、小时、天、周、月维度的定时执行。
⁠3. 失效文件管理
  • STRM 文件有效性检测(快扫):对比缓存,快速找出不一致的文件。

  • STRM 文件有效性检测(慢扫):真实请求链接,检测死链(速度较慢,消耗资源)。

  • 系统会根据检测任务的结果,将失效的 .strm 文件列在“失效文件”页面。

  • 重新检测:点击按钮可对该配置下的失效文件进行一次快速复查(触发快扫任务)。

  • 删除:确认失效后,可一键删除文件,保持媒体库整洁。

⁠常见问题

  1. 生成的 strm 无法播放?

    • 请检查 Alist 设置是否开启了防盗链或 Referer 限制。
    • 如果是 115 网盘,可能会遇到防火墙阻断(报错“访问的网址不安全”),建议等待或更换 Cookie,或在 Alist 中调整并发设置。
  2. 慢扫速度很慢?

    • 慢扫需要对每个文件发起 HTTP 请求验证,为了防止被服务器屏蔽,内置了随机休眠间隔。这是正常现象。建议仅在必要时(如大规模整理库)开启慢扫,日常使用快扫即可。
  3. 容器启动失败或报错?

    • 检查映射的卷权限是否正确。
    • 查看 /app/logs 下的日志文件获取详细错误信息。

⁠更新日志

v6.0.7 (2026-02-06)

  • 修复下载间隔问题。
  • 修复日志实时更新问题。
  • 增加 Docker 支持。
  • 优化失效文件检测逻辑(区分快扫与慢扫)。
  • 完善 WebUI 交互体验。

Tag summary

Content type

Image

Digest

sha256:12e0d3dee…

Size

94.9 MB

Last updated

8 months ago

docker pull brian9909/alist-strm