livetv/docker-compose.yaml
Заид Омар Медхат 123a3f241b
Some checks failed
Deploy / deploy (push) Has been cancelled
init
2026-07-25 22:06:50 +05:00

54 lines
2 KiB
YAML

services:
# ---------------------------------------------------------------------------
# Dispatcharr — ingests the Xtream API (URL + user + pass) and re-serves it as
# an HDHomeRun tuner + M3U + EPG for Jellyfin. NOT exposed publicly.
# ---------------------------------------------------------------------------
dispatcharr:
image: ghcr.io/dispatcharr/dispatcharr:latest
container_name: dispatcharr
restart: unless-stopped
volumes:
- dispatcharr_data:/data
environment:
DISPATCHARR_ENV: aio
REDIS_HOST: localhost
CELERY_BROKER_URL: redis://localhost:6379/0
DISPATCHARR_LOG_LEVEL: info
# No published ports. NPM (on the `proxy` network) reaches it by name for
# both the admin UI and Jellyfin's tuner/EPG: http://dispatcharr:9191
# - Admin UI -> NPM host dispatcharr.altricade.com (add an Access List)
# - Jellyfin -> internal http://dispatcharr:9191 (no exposure)
networks:
- proxy
# ---------------------------------------------------------------------------
# Jellyfin — the app you and others actually watch in. This is the ONLY
# public-facing service: expose it via Nginx Proxy Manager (see notes below).
# In NPM: forward hostname = jellyfin , port = 8096 , scheme http , WS on.
# ---------------------------------------------------------------------------
jellyfin:
image: jellyfin/jellyfin:latest
container_name: jellyfin
restart: unless-stopped
volumes:
- jellyfin_config:/config
- jellyfin_cache:/cache
# Optional media library (VOD / DVR recordings). Point at a real path:
# - /srv/media:/media
environment:
# Helps clients build correct absolute URLs behind the HTTPS proxy.
JELLYFIN_PublishedServerUrl: https://jellyfin.altricade.com
networks:
- proxy
# Optional Intel/AMD hardware transcoding (uncomment if your VPS has a GPU):
# devices:
# - /dev/dri:/dev/dri
volumes:
dispatcharr_data:
jellyfin_config:
jellyfin_cache:
networks:
proxy:
external: true