- Add Authelia OIDC configuration to Immich (.env) - Remove Tinyauth middleware comment from Immich compose - Update Jellyfin SSO comment to reference Authelia instead of Tinyauth - Enable NVIDIA GPU transcoding for Jellyfin
57 lines
1.8 KiB
YAML
57 lines
1.8 KiB
YAML
# Jellyfin Media Server
|
|
# Docs: https://jellyfin.org/docs/general/installation/container/?method=docker-compose
|
|
# Transcoding: https://jellyfin.org/docs/general/post-install/transcoding/hardware-acceleration/nvidia
|
|
|
|
services:
|
|
jellyfin:
|
|
container_name: jellyfin
|
|
image: lscr.io/linuxserver/jellyfin:latest
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- NVIDIA_VISIBLE_DEVICES=all
|
|
- NVIDIA_DRIVER_CAPABILITIES=compute,video,utility
|
|
volumes:
|
|
- ./config:/config
|
|
- ./cache:/cache
|
|
# Media folders (read-only)
|
|
- /mnt/media/movies:/media/movies:ro
|
|
- /mnt/media/tv:/media/tv:ro
|
|
- /mnt/media/music:/media/music:ro
|
|
- /mnt/media/photos:/media/photos:ro
|
|
- /mnt/media/homemovies:/media/homemovies:ro
|
|
ports:
|
|
- "8096:8096"
|
|
- "7359:7359/udp" # Optional - for autodiscovery
|
|
restart: unless-stopped
|
|
networks:
|
|
- homelab
|
|
labels:
|
|
traefik.enable: true
|
|
traefik.docker.network: homelab
|
|
traefik.http.routers.jellyfin.rule: Host(`flix.fig.systems`)
|
|
traefik.http.routers.jellyfin.entrypoints: websecure
|
|
traefik.http.routers.jellyfin.tls.certresolver: letsencrypt
|
|
traefik.http.services.jellyfin.loadbalancer.server.port: 8096
|
|
|
|
# Homarr Discovery
|
|
homarr.name: Jellyfin (Media Server)
|
|
homarr.group: Media
|
|
homarr.icon: simple-icons:jellyfin
|
|
|
|
# Note: Jellyfin has its own auth system, SSO middleware disabled by default
|
|
# Uncomment the line below to enable SSO (requires users to auth via Authelia first)
|
|
|
|
# NVIDIA GPU transcoding (GTX 1070)
|
|
runtime: nvidia
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: all
|
|
capabilities: [gpu]
|
|
|
|
networks:
|
|
homelab:
|
|
external: true
|