- Added StudioLeftSidebar component for scene management with add, delete, and duplicate functionalities. - Introduced StudioRightPanel component with tabs for brand settings, multimedia, sounds, video, QR code generation, countdown, and general settings. - Created StudioSidebar component for participant management, chat, and notes. - Developed StudioVideoArea component to handle video display for demo and live modes. - Configured demo data for scenes, participants, overlays, backgrounds, and sounds in demo.ts. - Set up a token server for LiveKit integration to manage participant access. - Updated Vite environment definitions for LiveKit configuration.
146 lines
3.0 KiB
Markdown
146 lines
3.0 KiB
Markdown
# Servidor de Tokens LiveKit - Docker
|
|
|
|
Este directorio contiene el servidor de tokens LiveKit dockerizado para AvanzaCast.
|
|
|
|
## 🚀 Inicio Rápido
|
|
|
|
### Opción 1: Usando Docker Compose (Recomendado)
|
|
|
|
Desde la raíz del proyecto:
|
|
|
|
```bash
|
|
# Construir e iniciar el servidor
|
|
docker-compose up -d livekit-token-server
|
|
|
|
# Ver logs
|
|
docker-compose logs -f livekit-token-server
|
|
|
|
# Detener el servidor
|
|
docker-compose down
|
|
```
|
|
|
|
### Opción 2: Usando Docker directamente
|
|
|
|
```bash
|
|
cd packages/studio-panel
|
|
|
|
# Construir la imagen
|
|
docker build -t avanzacast-token-server .
|
|
|
|
# Ejecutar el contenedor
|
|
docker run -d \
|
|
--name avanzacast-token-server \
|
|
-p 3010:3010 \
|
|
-e LIVEKIT_API_KEY=devkey \
|
|
-e LIVEKIT_API_SECRET=secretsecretsecretsecretsecretsecret \
|
|
-e LIVEKIT_URL=wss://livekit-server.bfzqqk.easypanel.host \
|
|
avanzacast-token-server
|
|
|
|
# Ver logs
|
|
docker logs -f avanzacast-token-server
|
|
|
|
# Detener el contenedor
|
|
docker stop avanzacast-token-server
|
|
docker rm avanzacast-token-server
|
|
```
|
|
|
|
## 🔧 Variables de Entorno
|
|
|
|
El servidor requiere las siguientes variables de entorno:
|
|
|
|
- `LIVEKIT_API_KEY`: API Key de LiveKit
|
|
- `LIVEKIT_API_SECRET`: Secret de LiveKit
|
|
- `LIVEKIT_URL`: URL del servidor LiveKit (wss://...)
|
|
- `PORT`: Puerto del servidor (default: 3010)
|
|
|
|
## 📡 Endpoints
|
|
|
|
Una vez iniciado, el servidor estará disponible en:
|
|
|
|
- **Health Check**: `http://localhost:3010/health`
|
|
- **Generación de Tokens**: `http://localhost:3010/api/token?room=ROOM_NAME&username=USERNAME`
|
|
|
|
### Ejemplo de uso:
|
|
|
|
```bash
|
|
# Verificar salud del servidor
|
|
curl http://localhost:3010/health
|
|
|
|
# Generar token
|
|
curl "http://localhost:3010/api/token?room=mi-sala&username=usuario1"
|
|
```
|
|
|
|
## 🔍 Monitoreo
|
|
|
|
### Ver estado del contenedor
|
|
```bash
|
|
docker ps | grep avanzacast-token-server
|
|
```
|
|
|
|
### Ver logs en tiempo real
|
|
```bash
|
|
docker logs -f avanzacast-token-server
|
|
```
|
|
|
|
### Verificar health check
|
|
```bash
|
|
docker inspect --format='{{.State.Health.Status}}' avanzacast-token-server
|
|
```
|
|
|
|
## 🔄 Actualización
|
|
|
|
Para actualizar el servidor después de cambios en el código:
|
|
|
|
```bash
|
|
# Detener y eliminar el contenedor actual
|
|
docker-compose down livekit-token-server
|
|
|
|
# Reconstruir la imagen
|
|
docker-compose build livekit-token-server
|
|
|
|
# Iniciar nuevamente
|
|
docker-compose up -d livekit-token-server
|
|
```
|
|
|
|
## 🐛 Troubleshooting
|
|
|
|
### El contenedor no inicia
|
|
|
|
```bash
|
|
# Ver logs de error
|
|
docker logs avanzacast-token-server
|
|
|
|
# Verificar que las variables de entorno estén configuradas
|
|
docker exec avanzacast-token-server env | grep LIVEKIT
|
|
```
|
|
|
|
### Puerto 3002 ya en uso
|
|
|
|
```bash
|
|
# Verificar qué está usando el puerto
|
|
lsof -i :3002
|
|
|
|
# Detener el proceso que usa el puerto
|
|
kill -9 <PID>
|
|
```
|
|
|
|
### Reiniciar el contenedor
|
|
|
|
```bash
|
|
docker restart avanzacast-token-server
|
|
```
|
|
|
|
## 📋 Comandos Útiles
|
|
|
|
```bash
|
|
# Entrar al contenedor
|
|
docker exec -it avanzacast-token-server sh
|
|
|
|
# Ver uso de recursos
|
|
docker stats avanzacast-token-server
|
|
|
|
# Eliminar completamente (contenedor e imagen)
|
|
docker-compose down --rmi all
|
|
docker rmi avanzacast-token-server
|
|
```
|