# ============================================================================= # IRL Dashboard — SRTLA receiver stack # ============================================================================= # Reassembles the bonded stream sent by the router (srtla_send) and hands a # clean SRT feed to datarhei Restreamer, which republishes to YouTube / Twitch / # Kick / etc. # # Flow: router (srtla_send) --SRTLA/UDP--> srtla_rec --SRT--> restreamer --RTMP--> CDN # # QUICK START # 1. cp .env.example .env # then edit the SRTLA port if you want # 2. docker compose up -d --build # 3. Open Restreamer at http://THIS-BOX-IP:8080 and finish its first-run setup; # confirm its SRT input is on port 6000 (the default). # 4. Forward the SRTLA UDP port (default 25554) on your firewall/router to THIS box. # 5. In the dashboard Bonding tab set: # Receiver host = this box's public IP or DDNS name # Receiver port = SRTLA_PORT (default 25554) # # Already run Restreamer (or another SRT ingest) elsewhere? Delete the # "restreamer" service and its volumes below, then set SRT_TARGET_HOST and # SRT_TARGET_PORT in .env to point srtla_rec at your existing ingest. # ============================================================================= services: srtla_rec: build: . container_name: srtla_rec restart: unless-stopped # Listen on SRTLA_PORT/udp; forward the reassembled SRT to the target. # Default target is the bundled "restreamer" service on its internal SRT port 6000. command: ["${SRTLA_PORT:-25554}", "${SRT_TARGET_HOST:-restreamer}", "${SRT_TARGET_PORT:-6000}"] ports: - "${SRTLA_PORT:-25554}:${SRTLA_PORT:-25554}/udp" depends_on: - restreamer restreamer: image: datarhei/restreamer:latest container_name: restreamer restart: unless-stopped ports: - "8080:8080" # Restreamer web UI (http) - "8181:8181" # Restreamer web UI (https) - "6000:6000/udp" # SRT ingest (also reachable in-network by srtla_rec) volumes: - restreamer_config:/core/config - restreamer_data:/core/data volumes: restreamer_config: restreamer_data: