Sign inSign up

mrgreen007/livekit-dashboard

By mrgreen007

•Updated 7 months ago

A modern, web-based management dashboard for LiveKit

Image
Developer tools
Monitoring & observability
0

3.9K

mrgreen007/livekit-dashboard repository overview

⁠LiveKit Dashboard (Multi-Arch)

A stateless, self-hosted, server-side rendered (SSR) dashboard for managing a private LiveKit server. Built with FastAPI and Jinja2, this tool provides a comprehensive interface to monitor and control your LiveKit infrastructure without the need for an external database.

⁠Features

  • Overview Dashboard: Real-time server status, active rooms, and participant counts.
  • Room Management: List, create, and close rooms; view real-time participant tracks.
  • Token Generation: Generate join tokens on-the-fly for testing via the Sandbox.
  • Egress and Ingress: Monitor active recordings, egress jobs, and ingress streams.
  • Agent Management: Dispatch and monitor LiveKit Agents.
  • Multi-Arch Support: Native builds for Intel/AMD (amd64) and ARM64 (Apple Silicon/Graviton).

⁠Quick Start

Run the container by passing the required environment variables:

docker run -d \
  -p 8000:8000 \
  -e LIVEKIT_URL=https://your-livekit-server.com \
  -e LIVEKIT_API_KEY=your-api-key \
  -e LIVEKIT_API_SECRET=your-api-secret \
  -e ADMIN_USERNAME=admin \
  -e ADMIN_PASSWORD=your-secure-password \
  -e APP_SECRET_KEY=generate-a-random-hex-string \
  --name livekit-dashboard \
  mrgreen007/livekit-dashboard:latest

⁠Configuration Variables

The following variables are required for the dashboard to function:

  • LIVEKIT_URL: Your LiveKit server URL (e.g., https://livekit.example.com⁠)
  • LIVEKIT_API_KEY: Your LiveKit API Key
  • LIVEKIT_API_SECRET: Your LiveKit API Secret
  • ADMIN_USERNAME: The username for dashboard access
  • ADMIN_PASSWORD: The password for dashboard access
  • APP_SECRET_KEY: A long random string for CSRF and session security

⁠Production Deployment (Docker Compose)

This is a minimal, production-grade configuration. It uses a restart policy and keeps your credentials organized.

services:
  livekit-dashboard:
    image: mrgreen007/livekit-dashboard:latest
    container_name: livekit-dashboard
    restart: always
    ports:
      - 8000:8000
    environment:
      LIVEKIT_URL: https://your-livekit-server.com
      LIVEKIT_API_KEY: your-api-key
      LIVEKIT_API_SECRET: your-api-secret
      ADMIN_USERNAME: admin
      ADMIN_PASSWORD: your-secure-password
      APP_SECRET_KEY: your-long-random-secret-key
      DEBUG: "false"

⁠Security Recommendations

  1. SSL/TLS: This dashboard handles sensitive API keys. Always run this behind a reverse proxy (like Nginx, Traefik, or Caddy) with HTTPS enabled.
  2. Secret Key: Ensure APP_SECRET_KEY is a unique, long string to prevent session hijacking.
  3. Access Control: If possible, restrict access to the dashboard port (8000) to your specific IP or via a VPN.


Credits: Based on the "thinhdanggroup/livekit-dashboard" project.

Tag summary

Content type

Image

Digest

sha256:865ac50fe…

Size

115.2 MB

Last updated

7 months ago

docker pull mrgreen007/livekit-dashboard