Jellyfin Docker Compose Reference#
Canonical copy of /docker/jellyfin/compose.yaml on the servarr VM (192.168.1.112).
Jellyfin and Jellyseerr run in a separate compose file from the main Servarr stack, on their own Docker network (jellyfin_default, 172.18.0.0/16).
compose.yaml#
services:
jellyfin:
image: lscr.io/linuxserver/jellyfin:latest
container_name: jellyfin
environment:
- PUID=1000
- PGID=1000
- TZ=America/Los_Angeles
- JELLYFIN_PublishedServerUrl=http://192.168.1.112 #optional
volumes:
- ./config:/config
- /data:/data
- ./jellyfin-web/config.json:/usr/share/jellyfin/web/config.json
devices:
- /dev/dri:/dev/dri #Use for Intel QuickSync
ports:
- 8096:8096
- 7359:7359/udp #Service Discovery
- 1900:1900/udp #Client Discovery
restart: unless-stopped
labels:
- deunhealth.restart.on.unhealthy=true
healthcheck:
test: curl -f http://localhost:8096/health || exit 1
interval: 60s
retries: 3
start_period: 30s
timeout: 10s
# Remove the Jellyfin service if installed directly on system.
jellyseerr:
container_name: jellyseerr
image: fallenbagel/jellyseerr:latest
environment:
- PUID=1000
- PGID=1000
- TZ=America/Los_Angeles
volumes:
- ./jellyseerr:/app/config
ports:
- 5055:5055
restart: unless-stoppedKey Details#
- Network: Uses the auto-created
jellyfin_defaultbridge network (172.18.0.0/16). Jellyseerr reaches the *arr services via the host IP (192.168.1.112) and their exposed ports. - GPU Passthrough:
/dev/dri:/dev/drienables Intel QuickSync hardware-accelerated transcoding. - PUID/PGID: Hardcoded to
1000(unlike the servarr stack which uses.envvariables). - TZ:
America/Los_Angeles(note: servarr stack usesAmerica/New_York). - Healthcheck: Already configured with deunhealth label — auto-restarts on unhealthy.
- Custom web config:
./jellyfin-web/config.jsonis bind-mounted into the container for UI customization (e.g., the Hinterflix help link).
Directory Layout#
/docker/jellyfin/
├── compose.yaml
├── config/ # Jellyfin server config
├── jellyfin-web/
│ └── config.json # Custom web UI config
└── jellyseerr/ # Jellyseerr app config