iac/docker/jellyfin/docker-compose.yml

80 lines
2.3 KiB
YAML

---
services:
jellyfin:
image: ghcr.io/linuxserver/jellyfin@sha256:140fcea8a5d9b9b6534790e8f9289b94030ba603707a5fcb5e47f5df7b625e38
container_name: jellyfin
devices:
- /dev/dri/renderD129:/dev/dri/renderD129
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- DOCKER_MODS=linuxserver/mods:jellyfin-opencl-intel
volumes:
- /home/mafyuh/jellyfin/config:/config
- /mnt/thePoolShare/Media:/Media
- /mnt/thePoolShare/Media/Youtube:/Media/Youtube:ro
- /home/mafyuh/jellyfin/transcodes:/transcodes
- /home/mafyuh/jellyfin/cache:/nvmecache
- /home/mafyuh/jellyfin/metadata:/nvmemetadata
ports:
- 8096:8096
restart: unless-stopped
makemkv:
image: jlesage/makemkv@sha256:39dccc4f82dc76668a78543ac7392a43b6bc6c069e1a3e47e8c058c6cb5f09b0
container_name: makemkv
ports:
- 5800:5800
environment:
- MAKEMKV_KEY=$MAKEMKV_KEY
volumes:
- /docker/appdata/makemkv:/config:rw
- /home/mafyuh/makemkv/storage:/storage:rw
- /mnt/thePoolShare/Media/BR:/output:rw
devices:
- /dev/sr0:/dev/sr0
privileged: true
syncthing:
image: ghcr.io/linuxserver/syncthing@sha256:0141ef2c1ad754d6c93b92c0aa71648bf8c08b97ed80bf943091ad24332fcbb5
container_name: syncthing
hostname: JF
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
volumes:
- /docker/appdata/syncthing/config:/config
- /docker/appdata/:/docker/appdata/
- /home/mafyuh/jellyfin/:/home/mafyuh/jellyfin/
ports:
- 8384:8384
- 22000:22000/tcp
- 22000:22000/udp
- 21027:21027/udp
restart: unless-stopped
jellystat-db:
image: postgres:15.2
environment:
POSTGRES_DB: 'jfstat'
POSTGRES_USER: postgres
POSTGRES_PASSWORD: $POSTGRES_PASSWORD
volumes:
- /docker/appdata/jellystat/postgres-data:/var/lib/postgresql/data
jellystat:
image: cyfershepard/jellystat:1.1.0
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: $POSTGRES_PASSWORD
POSTGRES_IP: jellystat-db
POSTGRES_PORT: 5432
JWT_SECRET: $JWT_SECRET
ports:
- "3000:3000"
volumes:
- /docker/appdata/jellystat/backup-data:/app/backend/backup-data
depends_on:
- jellystat-db
restart: unless-stopped