Bedrud está diseñado para ejecutarse como un «appliance» autocontenido para videoconferencias. Un único binario ejecutable empaqueta todo lo necesario - frontend, backend y el servidor de medios LiveKit.
Características principales
| Característica | Descripción |
|---|---|
| Cero dependencias externas | No necesita Node.js, Redis ni un servidor de medios separado |
| Servidor de medios embebido | El binario de LiveKit se incluye y gestiona automáticamente |
| Frontend embebido | La UI de React se compila y pre-renderiza con SSR en el binario de Go |
| Almacenamiento SQLite | No requiere servidor de base de datos |
| TLS integrado | Certificados autofirmados o Let’s Encrypt |
| Instalador integrado | Configura systemd, directorios y configuraciones |
Ejecución del binario
Iniciar el servidor Bedrud
./bedrud --run --config config.yamlIniciar el servidor de medios LiveKit
./bedrud --livekit --config livekit.yamlEl binario contiene tanto el servidor de API como el servidor de medios. Usa flags para elegir cuál iniciar.
Instalación
Instalación rápida (Debian/Ubuntu)
# Con TLS de Let's Encrypt
sudo ./bedrud install --tls --domain meet.example.com --email admin@example.com
# Con certificado autofirmado
sudo ./bedrud install --tls --ip 1.2.3.4
# HTTP sin cifrar (solo desarrollo)
sudo ./bedrud install --ip 1.2.3.4What the Installer Does
When you run bedrud install, the following happens:
| Step | Action |
|---|---|
| 1 | Creates directories: /etc/bedrud, /var/lib/bedrud, /var/log/bedrud |
| 2 | Copies binary to /usr/local/bin/bedrud |
| 3 | Generates config.yaml with your settings /etc/bedrud/config.yaml |
| 4 | Generates livekit.yaml for media server /etc/bedrud/livekit.yaml |
| 5 | Creates two systemd services: bedrud.service & livekit.service |
| 6 | Enables and starts both services |
| 7 | Initializes SQLite database and certificate cache |
Arquitectura de servicios
Después de la instalación, se ejecutan dos servicios 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 --> DBArchivos de configuración
| Archivo | Propósito |
|---|---|
/etc/bedrud/config.yaml | Configuración principal del servidor |
/etc/bedrud/livekit.yaml | Configuración del servidor de medios |
/var/lib/bedrud/bedrud.db | Base de datos SQLite |
/var/log/bedrud/bedrud.log | Logs de la aplicación |
Consulta la referencia de configuración para todas las opciones.
Post-instalación
Crear tu primer administrador
Promote User to Admin
Register via the web UI at your server URL, then promote the user to admin:
sudo ./bedrud user promote --email admin@example.com
Verificar estado de los servicios
systemctl status bedrud livekitVer logs
tail -f /var/log/bedrud/bedrud.log
journalctl -u bedrud -fDesinstalación
sudo ./bedrud uninstallEsto elimina completamente:
- Archivos de servicio systemd
- Binario de
/usr/local/bin/ - Configuración en
/etc/bedrud/ - Datos en
/var/lib/bedrud/ - Logs en
/var/log/bedrud