homelab/compose/media/frontend/jellyfin/compose.yaml
Eduardo Figueroa 3bf1575ca8 chore: General catchup - service updates and cleanup
Updated service configurations, added new services, removed deprecated
ones, and improved gitignore patterns for better repository hygiene.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-03-15 05:23:02 +00:00

63 lines
1.9 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
# Shared memory for transcoding - prevents stuttering
shm_size: 4gb
deploy:
resources:
limits:
memory: 12G
cpus: '5.0'
reservations:
memory: 4G
devices:
- driver: nvidia
count: all
capabilities: [gpu]
networks:
homelab:
external: true