# 🎬 Jellyfin —— 飞牛 (fnOS) 安装（已解析，可直接使用）

- 应用 id：`jellyfin`
- 系统：飞牛 (fnOS)（`feiniu`）
- compose 目录：`/vol1/1000/compose/all`
- 服务名：`jellyfin`
- 参考视频：https://www.bilibili.com/video/BV1yi4y1h7i5/
- 来源：好用斋 Docker 懒人包（haoyongzhai.com/lazybag）。本文件已按系统解析，**无需替换任何占位符**。

> 多个应用共用同一份 `/vol1/1000/compose/all/docker-compose.yml`。下面命令重复执行也安全：装新应用会追加，重装同一个应用会先替换它的旧块（文件里是交互页导出的、没有标记的旧块也能识别）。**不要手改 yaml。**

## 安装 / 更新

```bash
curl -fsSL -o /tmp/hyz-append.sh https://haoyongzhai.com/lazybag/install/append.sh
bash /tmp/hyz-append.sh feiniu jellyfin
```

> ARM64 有独立模板：脚本会按机器架构自动判断；也可以显式加参数 `--arm`（强制 x86 用 `--x86`）。

> 脚本做的事：下载本应用的块 → 替换文件里它的旧块 → `docker compose config -q` 校验 → `docker compose up -d`。校验失败会停下并保留文件，把报错转告用户。

> 自定义过目录（不是默认的 `/vol1/1000/compose/all`）时：`HYZ_COMPOSE_DIR=/你的目录 bash /tmp/hyz-append.sh feiniu jellyfin`。

> 已装的应用不会被影响（`docker compose up -d` 只创建/更新文件里列出的服务）。不想跑脚本的话，也可以直接把下面「compose 内容」整段追加到文件末尾，并保留 `# >>> APP` 标记。

## 升级

```bash
cd /vol1/1000/compose/all && \
docker compose pull jellyfin && \
docker compose up -d jellyfin && \
docker image prune -f
```

## ARM64

> 该应用有独立的 ARM64 模板（`jellyfin-arm.yml`），脚本会按机器架构自动选用，不用手动改命令。

## compose 内容（等同块文件，仅供人工查看）

```yaml
########################################################################
# >>> APP jellyfin >>>

#媒体中心Jellyfin
#参考视频：https://www.bilibili.com/video/BV1yi4y1h7i5/
#官网： https://github.com/jellyfin/jellyfin

  jellyfin:
    image: nyanmisaka/jellyfin:latest
    container_name: Jellyfin
    restart: always
    privileged: true
    environment:
      - TZ=Asia/Shanghai
      - PUID=0
      - PGID=0
    devices:
      - /dev/dri:/dev/dri
    volumes:
      - /vol1/1000/tools/jellyfin/config:/config
      - /vol1/1000/tools/jellyfin/cache:/cache
      - /vol1/1000/media:/media
      - /vol1/1000:/vol1/1000:rslave
    extra_hosts:
      - api.themoviedb.org:18.161.156.25 
      - image.tmdb.org:169.150.249.162
    ports:
      - "8099:8096"
    network_mode: bridge
# <<< APP jellyfin <<<
```

