Files
decap-stream/docker/docker-compose.yml
T

34 lines
1.6 KiB
YAML
Raw Permalink Normal View History

2026-04-23 23:40:34 -03:00
services:
decap-stream:
image: ghcr.io/riguettodev/decap-stream:latest
2026-04-23 23:40:34 -03:00
container_name: decap-stream
restart: unless-stopped
shm_size: "1gb"
security_opt:
- seccomp:unconfined
# gpus: all # Uncomment for NVIDIA (nvenc) — requires nvidia-container-toolkit on host
# devices:
# - /dev/dri:/dev/dri # Uncomment for Intel/AMD (vaapi or qsv)
2026-04-23 23:40:34 -03:00
environment:
TZ: America/Sao_Paulo
# AUTH_USER: admin # If set (with AUTH_PASS), enables login
# AUTH_PASS: secure_password
DEFAULT_PURE_MODE: false # Pure mode: raw .m3u8 / minimal player (no UI chrome)
DEFAULT_OPEN_NEW_TAB: false # Open player buttons in a new tab
DEFAULT_RELOAD_CLIENT: false # Auto-reload the client player page
DEFAULT_RELOAD_CLIENT_TIME: 2 # Client auto-reload interval in minutes
# FFMPEG_HWACCEL: nvenc # GPU encoding: nvenc (NVIDIA), vaapi / qsv (Intel/AMD)
# LD_LIBRARY_PATH: /usr/lib/wsl/lib # WSL2 + nvenc only
2026-04-23 23:40:34 -03:00
ports:
- "3000:3000" # Web UI — main entry point
- "127.0.0.1:6080:6080" # noVNC — localhost only; expose via tunnel/VPN for remote access
# - "1935:1935" # RTMP — expose only for external ingest (e.g. OBS)
# - "8888:8888" # HLS — internal only; proxied through Next.js at /api/hls/
2026-04-23 23:40:34 -03:00
volumes:
- streams:/app/data/streams # Persistent: streams.json, chrome profiles, thumbnails
# - ./logs:/app/data/logs # Optional: mount for external log access
# - /usr/lib/wsl/lib:/usr/lib/wsl/lib:ro # WSL2 + nvenc: exposes libnvidia-encode.so.1
2026-04-23 23:40:34 -03:00
volumes:
streams: