Skip to main content
Self-hosted Docker Compose stack for live radio streaming. Ingest from any studio encoder, deliver via Icecast2 and HLS adaptive bitrate, with automatic fallback, silence detection, PostHog analytics, Pushover alerts, and a real-time operator dashboard.

Quickstart

Get the stack running in minutes with the interactive installer.

Features

Multiple formats

MP3, AAC, and Ogg Vorbis outputs at multiple bitrates, plus HLS adaptive streaming for mobile.

Automatic fallback

Three-tier fallback chain — primary stream, backup stream, and emergency audio file.

Silence detection

Detects dead air and sends alerts via Pushover with configurable thresholds.

Operator dashboard

Real-time listener counts, container health, emergency audio management, and alert timeline.

Analytics

Listener metrics and stream events sent to PostHog for monitoring and analysis.

SSL out of the box

Automatic Let’s Encrypt certificate provisioning and renewal via Certbot.

Services

ServiceDescription
Icecast2Stream distribution server with six mount points
LiquidsoapStream processor — ingest, fallback chain, encoding, HLS output
NginxPublic-facing reverse proxy and HLS segment serving
Status PanelFlask API backend — stream health, container status, emergency audio management
AnalyticsPolls Icecast stats and sends events to PostHog with Pushover alerts
CertbotAutomatic Let’s Encrypt certificate renewal

File structure

├── docker-compose.yml
├── .env.example
├── install.sh
├── init-letsencrypt.sh
├── setup-firewall.sh
├── icecast/
│   ├── Dockerfile
│   └── icecast.xml
├── liquidsoap/
│   ├── Dockerfile
│   └── radio.liq
├── nginx/
│   ├── Dockerfile
│   └── nginx.conf
├── analytics/
│   ├── Dockerfile
│   ├── requirements.txt
│   └── tracker.py
├── status-panel/              ← API backend (Docker)
│   ├── Dockerfile
│   ├── requirements.txt
│   └── server.py
├── status-dashboard/          ← Next.js frontend (Appwrite Sites)
│   ├── app/
│   ├── components/
│   ├── lib/
│   └── package.json
└── emergency-audio/
    └── fallback.mp3

License

Audio Streaming Stack is released under the MIT License.