STREAM_PACK.md (1088B)
1 # Stream Pack (optional, dedicated servers) 2 3 Bzl core is designed to run without any domain name. **Streaming** (game/screen share + voice) is different: it needs a real-time media server and **HTTPS**. 4 5 This repo ships an **optional “Stream Pack”** that you can install on dedicated servers. It runs: 6 - **LiveKit** (SFU) for scalable WebRTC (one streamer, many viewers) 7 - **coturn** for NAT traversal reliability 8 9 Core Bzl remains unchanged: if you don’t install Stream Pack, everything still works (just no streaming). 10 11 ## Quick start 12 13 1. Decide a hostname for streaming (example): `stream.yourdomain.com` 14 2. Create DNS A record to your server (set to **DNS-only**, not proxied). 15 3. Generate the pack: 16 17 ```bash 18 node scripts/stream-pack-init.js --domain=stream.yourdomain.com --email=you@yourdomain.com 19 ``` 20 21 4. Edit `stream_pack/.env` and set `TURN_EXTERNAL_IP` to your public server IP. 22 5. Add `stream_pack/Caddyfile.snippet` to your Caddy config and reload. 23 6. Open firewall ports listed in `stream_pack/README.md`. 24 7. Start it: 25 26 ```bash 27 cd stream_pack 28 docker compose up -d 29 ``` 30