▮ Operate

Configuration

Everything is configured through environment variables — no config file required. Sensible defaults work out of the box.

Environment variables

MUXSHED_LISTEN_ADDR   # default 0.0.0.0:8080  — web UI + API
MUXSHED_RTMP_PORT     # default 1935          — RTMP ingest
MUXSHED_SRT_PORT_START# default 9000          — SRT ingest
MUXSHED_DB_PATH       # default muxshed.db    — SQLite database
MUXSHED_DATA_DIR      # default data          — recordings, HLS, assets
MUXSHED_WEB_DIR       # path to built web UI (set in the image)
MUXSHED_LOG_LEVEL     # default info          — trace|debug|info|warn|error

In the container these point at the /config volume, so all state persists there:

MUXSHED_DB_PATH=/config/muxshed.db
MUXSHED_DATA_DIR=/config

Persistence

All configuration lives in a single SQLite database — sources, scenes, destinations, overlays, API keys and your channel settings. Back up /config and you've backed up everything.

API keys

First run generates an admin account and an API key. Use it for the Stream Deck plugin or any external automation:

curl -H "X-API-Key: YOUR_KEY" http://localhost:8080/api/v1/status
Treat the API key like a password — it has full control of the instance.