Files
dotcom-arcade/streaming/compose.yaml
T
branderson f5e9452191 Add session manager for per-player streams
Creates a streamer container per player on flashpoint-web's request, sized
to the game's applet, proxies its Selkies stream under /stream/<id>/, and
removes it when the player disconnects. Saves under /config/saves are
seeded from the browser at start and pushed back over server-sent events.
2026-10-11 00:37:44 -07:00

30 lines
876 B
YAML

services:
session-manager:
build: session-manager
container_name: flashpoint-session-manager
restart: unless-stopped
ports:
- "${STREAM_PORT:-8081}:8081"
volumes:
# Starts and removes streamer containers
- /var/run/docker.sock:/var/run/docker.sock
- ${FLASHPOINT_HOST_PATH:?FLASHPOINT_HOST_PATH is required}:/flashpoint:ro
environment:
- FLASHPOINT_HOST_PATH
- API_TOKEN=${API_TOKEN:?API_TOKEN is required}
- MAX_SESSIONS=${MAX_SESSIONS:-4}
- PUID=${PUID:-1000}
- PGID=${PGID:-1000}
networks:
- flashpoint
- streams
networks:
# Shared with flashpoint-web, which calls the internal API on port 8080
flashpoint:
name: flashpoint
# Streamer containers: reachable only from the session manager, no internet access
streams:
name: flashpoint-streams
internal: true