Bedrud Документация

Bedrud спроектирован для работы как самодостаточный «appliance» для видеоконференций. Один исполняемый бинарник содержит всё необходимое - фронтенд, backend и медиа-сервер LiveKit.

Ключевые особенности

ОсобенностьОписание
Нулевые внешние зависимостиНе нужны Node.js, Redis или отдельный медиа-сервер
Встроенный медиа-серверБинарник LiveKit включён и управляется автоматически
Встроенный фронтендReact UI скомпилирован и SSR пререндерен в Go-бинарник
Хранилище SQLiteСервер базы данных не требуется
Встроенный TLSСамоподписанные сертификаты или Let’s Encrypt
Встроенный установщикНастраивает systemd, директории и конфигурации

Запуск бинарника

Запуск сервера Bedrud

./bedrud --run --config config.yaml

Запуск медиа-сервера LiveKit

./bedrud --livekit --config livekit.yaml

Бинарник содержит как API-сервер, так и медиа-сервер. Используйте флаги для выбора нужного.

Установка

Быстрая установка (Debian/Ubuntu)

# С TLS от Let's Encrypt
sudo ./bedrud install --tls --domain meet.example.com --email admin@example.com
 
# С самоподписанным сертификатом
sudo ./bedrud install --tls --ip 1.2.3.4
 
# Обычный HTTP (только для разработки)
sudo ./bedrud install --ip 1.2.3.4

Что делает установщик

При установке происходит следующее:

Шаг Действие
1 Создает директории: /etc/bedrud, /var/lib/bedrud, /var/log/bedrud
2 Копирует бинарник в /usr/local/bin/bedrud
3 Генерирует config.yaml /etc/bedrud/config.yaml
4 Генерирует livekit.yaml /etc/bedrud/livekit.yaml
5 Создает сервисы systemd: bedrud.service & livekit.service
6 Включает и запускает сервисы
7 Инициализирует SQLite и сертификаты

Архитектура сервисов

После установки работают два сервиса systemd:

flowchart LR
    BS["bedrud.service<br/>bedrud --run<br/>(API + Web UI)"]
    LS["livekit.service<br/>bedrud --livekit<br/>(WebRTC media)"]
    DB["SQLite database"]
 
    BS --> LS
    BS --> DB

Файлы конфигурации

ФайлНазначение
/etc/bedrud/config.yamlОсновная конфигурация сервера
/etc/bedrud/livekit.yamlКонфигурация медиа-сервера
/var/lib/bedrud/bedrud.dbБаза данных SQLite
/var/log/bedrud/bedrud.logЛоги приложения

См. Справочник конфигурации для всех параметров.

После установки

Создание первого администратора

Выдать права администратора

Зарегистрируйтесь через веб-UI, затем выдайте права:

			
sudo ./bedrud user promote --email admin@example.com
		

Проверка статуса сервисов

systemctl status bedrud livekit

Просмотр логов

tail -f /var/log/bedrud/bedrud.log
journalctl -u bedrud -f

Удаление

sudo ./bedrud uninstall

Это полностью удалит:

  • Файлы сервисов systemd
  • Бинарник из /usr/local/bin/
  • Конфигурацию в /etc/bedrud/
  • Данные в /var/lib/bedrud/
  • Логи в /var/log/bedrud