Files
carplay/docker-compose-example.yml

49 lines
1.5 KiB
YAML

services:
frame-stream-player:
build: .
image: frame-stream-player:latest
container_name: frame-stream-player
restart: unless-stopped
ports:
- "3000:3000"
environment:
PORT: "3000"
NODE_ENV: production
# split: smoothest, two upstream connections.
# relay: one upstream connection, separate audio/frame ffmpeg workers.
# single: one upstream connection and one ffmpeg worker; fallback only.
PLAYBACK_CONNECTION_MODE: relay
FFMPEG_LOG_LEVEL: warning
FFMPEG_INPUT_SEEKABLE: "0"
FFMPEG_HTTP_RECONNECT: "1"
FFMPEG_HTTP_RECONNECT_DELAY_MAX: "2"
FFMPEG_HTTP_RECONNECT_MAX_RETRIES: "4"
FFMPEG_HTTP_RECONNECT_ON_HTTP_ERROR: "5xx"
DEFAULT_FPS: "8"
DEFAULT_FRAME_WIDTH: "480"
JPEG_QUALITY: "12"
DEFAULT_AUDIO_BITRATE: "64k"
DEFAULT_AUDIO_CHANNELS: "1"
DEFAULT_AUDIO_SAMPLE_RATE: "44100"
MAX_WS_BUFFER_BYTES: "524288"
MAX_AUDIO_QUEUE_BYTES: "16777216"
MAX_RELAY_BRANCH_QUEUE_BYTES: "16777216"
RECENT_URLS_PATH: /app/data/recent-urls.json
FAVORITES_PATH: /app/data/favorites.json
extra_hosts:
- "host.docker.internal:host-gateway"
volumes:
- frame-stream-data:/app/data
# CPU decoding is the default and does not need device passthrough.
#
# Optional Intel/AMD VAAPI device passthrough:
# devices:
# - "/dev/dri:/dev/dri"
#
# Optional NVIDIA passthrough with Docker Compose v2:
# gpus: all
volumes:
frame-stream-data: