Docker 一键搭建 qBittorrent + Jellyfin,打造私人家庭影院

2025年12月18日657 words, 4 min read
Authors

    最近体验了一下用 qBittorrent + Jellyfin 搭建家庭影院,效果还不错,特此记录一下。

    My family movie theater

    架构逻辑

    qBittorrent 下载视频,jellyfin 播放,使用 docker 快速部署,方便迁移。

    1. 自动衔接:qBittorrent 下载完成后的文件,Jellyfin 自动扫库展示。
    2. 硬解加速:调用核显,手机/平板上也能流畅播放 4K 电影。
    3. 环境隔离:一键部署,不污染宿主机系统。
    Diagram

    对外服务端口:

    • qBittorrent WebUI: ip:8080 (下载管理)
    • Jellyfin Web: ip:8096 (观影体验)

    目录结构准备

    为了保证数据持久化,建议不要使用 /tmp 目录(防止重启丢失)。推荐在当前目录下创建数据文件夹:

    .
    ├── docker-compose.yml
    ├── config/
    │   ├── qbittorrent/  # 存放 qB 配置
    │   └── jellyfin/     # 存放 Jellyfin 配置
    └── media/            # 存放电影和剧集文件
    

    Docker Compose 配置

    这里使用了 linuxserver 的镜像,对权限管理(PUID/PGID)支持得非常好,避免后续权限困扰。

    services:
      qbittorrent:
        image: lscr.io/linuxserver/qbittorrent:latest
        container_name: qbittorrent
        environment:
          - PUID=1000   # 建议通过 id 命令查看当前用户 ID
          - PGID=1000
          - TZ=Asia/Shanghai
          - WEBUI_PORT=8080
        volumes:
          - ./config/qbittorrent:/config
          - ./media:/downloads           # 映射到统一的媒体目录
        ports:
          - 8080:8080
          - 6881:6881
          - 6881:6881/udp
        restart: unless-stopped
    
      jellyfin:
        image: lscr.io/linuxserver/jellyfin:latest
        container_name: jellyfin
        environment:
          - PUID=1000
          - PGID=1000
          - TZ=Asia/Shanghai
        volumes:
          - ./config/jellyfin:/config
          - ./media:/data/media          # 与 qB 指向同一个物理路径
        ports:
          - 8096:8096
        devices:
          - /dev/dri:/dev/dri            # 传递核显,开启硬件解码
        restart: unless-stopped
    

    复制以上内容到服务器上的 docker-compose.yml 文件中,然后运行以下命令启动:

    docker compose up -d
    

    关键步骤说明

    1. qBittorrent 初始密码

    由于 qB 最近版本的安全策略更新,默认密码不再是 admin/admin。 部署完成后,需要运行以下命令查看自动生成的临时密码:

    docker logs qbittorrent
    

    在日志中找到 The WebUI administrator password was set to: xxxxxx 即可登录,进入后再自行修改。

    1. Jellyfin 开启硬件加速
    • 进入 Jellyfin 后,依次点击:控制台 -> 播放 -> 转码。
    • 如果你是 Intel 核显,选择 Intel QuickSync。
    • 记得勾选底部的 “启用硬件解码”。
    1. 目录映射技巧

    qBittorrent 下载设置中,将默认保存路径设置为 /downloads。这样下载完成后,文件会立即出现在 Jellyfin 挂载的 /data/media 中,无需手动移动。

    结语

    局域网下使用是非常流畅的,但如果需要公网访问,可以考虑 Cloudflare Tunnel。

    如果需要更自动化的体验(如自动追剧、自动刮削),可以考虑进一步引入 Sonarr/Radarr 家族。