941 字
5 分钟
自动追番方案 BangumiStack 部署

1. 简介#

追番时手动找资源、下载、整理太麻烦,于是用 Docker Compose 把三个服务整合到一起,实现从 RSS 订阅到媒体库的全自动流程。

整套方案叫 BangumiStack,由三个容器组成:

服务作用
AutoBangumi解析 RSS 订阅,自动识别番剧并推送下载任务
qBittorrentBT 下载客户端,负责实际下载
Jellyfin媒体服务器,统一管理和播放下载好的番剧

工作流程:

RSS 订阅 → AutoBangumi 解析 → qBittorrent 下载 → Jellyfin 媒体库

2. docker-compose.yml#

version: "3.8"
services:
qbittorrent:
image: superng6/qbittorrent
container_name: qbittorrent
environment:
- WEBUI_PORT=8080
volumes:
- ./qbittorrent/config:/config
- ./qbittorrent/downloads:/downloads
ports:
- "8080:8080" # WebUI
- "6881:6881" # BT
- "6881:6881/udp"
restart: unless-stopped
autobangumi:
image: estrellaxd/auto_bangumi
container_name: autobangumi
environment:
- AB_DOWNLOADER=qbittorrent
- AB_DOWNLOAD_PATH=/downloads/Bangumi
- AB_RSS_HOST=qbittorrent:8080
- AB_RSS_USER=admin
- AB_RSS_PASS=adminadmin
volumes:
- ./autobangumi/config:/app/config
ports:
- "7892:7892"
depends_on:
- qbittorrent
restart: unless-stopped
jellyfin:
image: jellyfin/jellyfin
container_name: jellyfin
volumes:
- ./jellyfin/config:/config
- ./jellyfin/cache:/cache
- ./qbittorrent/downloads:/media:ro
ports:
- "8096:8096"
restart: unless-stopped

几个关键点:

  • 数据卷共享:qBittorrent 的 downloads 目录被 Jellyfin 以只读方式(:ro)挂载为 /media,下载完成的番剧能直接被媒体库读取。
  • 服务依赖autobangumi 通过 depends_onqbittorrent 先启动。
  • 容器内通信:AutoBangumi 用 qbittorrent:8080 而不是 localhost,走的是 Compose 默认网络的服务名解析。
  • 重启策略:全部设为 unless-stopped,宿主机重启后服务自动拉起。

3. 目录结构#

BangumiStack/
├── docker-compose.yml
├── qbittorrent/
│ ├── config/ # qBittorrent 配置
│ └── downloads/ # 下载目录
│ └── Bangumi/ # AutoBangumi 自动归类的番剧
├── autobangumi/
│ └── config/ # AutoBangumi 配置
└── jellyfin/
├── config/ # Jellyfin 配置
└── cache/ # Jellyfin 缓存

配置和数据全部用相对路径挂载到项目目录下,迁移备份时直接打包整个文件夹即可。

4. 部署#

Terminal window
# 进入项目目录
cd BangumiStack
# 启动全部服务
docker compose up -d
# 查看日志
docker compose logs -f

5. 服务访问#

服务地址说明
qBittorrenthttp://localhost:8080BT 下载客户端
AutoBangumihttp://localhost:7892自动追番管理
Jellyfinhttp://localhost:8096媒体服务器

qBittorrent 默认账号 admin / adminadmin首次登录后立即修改密码。注意:如果改了密码,要同步更新 docker-compose.ymlautobangumiAB_RSS_PASS,否则 AutoBangumi 连不上下载器。

6. 配置说明#

6.1 AutoBangumi#

环境变量在 docker-compose.yml 中配置:

变量说明默认值
AB_DOWNLOADER下载器类型qbittorrent
AB_DOWNLOAD_PATH下载路径/downloads/Bangumi
AB_RSS_HOSTqBittorrent 地址qbittorrent:8080
AB_RSS_USERqBittorrent 用户名admin
AB_RSS_PASSqBittorrent 密码adminadmin

启动后在 WebUI 中添加番剧 RSS 订阅链接(常用源如 Mikan Project),AutoBangumi 会自动解析剧集并归类。

6.2 Jellyfin#

首次访问 WebUI 后需要:

  1. 创建管理员账号
  2. 添加媒体库,目录选择 /media
  3. 媒体类型选择「电视剧」

之后 Jellyfin 会自动刮削番剧元数据(封面、简介等)。

7. 常用命令#

Terminal window
# 启动
docker compose up -d
# 停止
docker compose down
# 重启单个服务
docker compose restart autobangumi
# 查看指定服务日志
docker compose logs -f autobangumi
# 更新镜像
docker compose pull
docker compose up -d

8. 常见问题#

8.1 AutoBangumi 无法连接 qBittorrent#

确保 qBittorrent 已启动,依次检查:

  • qBittorrent WebUI 能否正常访问
  • 用户名密码是否与 AB_RSS_USER / AB_RSS_PASS 一致
  • 容器网络是否正常(同一 Compose 网络下用服务名 qbittorrent 通信)

8.2 下载的文件在哪里#

文件存储在 ./qbittorrent/downloads/Bangumi/ 目录下,由 AutoBangumi 按番剧名称自动归类。

8.3 Jellyfin 媒体库不显示内容#

  1. 确认 AutoBangumi 已下载并完成归类
  2. 在 Jellyfin 手动刷新媒体库
  3. 检查文件命名是否符合 Jellyfin 识别规范

9. 小结#

整套方案的核心思路是用 Docker Compose 把三个独立服务串成一条流水线,依靠共享数据卷打通下载目录与媒体库,依靠容器网络服务名解决服务间通信。部署完成后,订阅一次 RSS 就能实现新番自动下载、归类、入库。

相关文档#

自动追番方案 BangumiStack 部署
https://blog.xeu.asia/posts/bangumi-stack-deploy/
作者
Xeu
发布于
2026-05-19
许可协议
CC BY-NC-SA 4.0