synops/scripts/maskinrommet-env.sh
vegard 02fc38eb3d LiveKit oppsett: Docker-container for WebRTC (oppgave 11.1)
Legger til LiveKit som Docker-tjeneste for WebRTC-støtte.
Konfigurasjonen bruker livekit/livekit-server med signaling
proxyet gjennom Caddy på /livekit/*, og UDP 50000-50100 eksponert
direkte for WebRTC media-strømmer.

Endringer:
- docker-compose.yml: livekit-service (på /srv/synops/)
- livekit.yaml: server-konfig (på /srv/synops/config/livekit/)
- Caddy: /livekit/* route aktivert
- UFW: åpnet UDP 50000-50100 + TCP 7881
- maskinrommet-env.sh: LIVEKIT_URL/KEY/SECRET for Rust-API
- produksjon.md: oppdatert med LiveKit-detaljer

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 22:54:50 +00:00

34 lines
1.4 KiB
Bash
Executable file

#!/usr/bin/env bash
# Genererer /tmp/maskinrommet.env med Docker container-IP-er.
# Kjøres av systemd ExecStartPre.
set -euo pipefail
ENV_FILE="/srv/synops/.env"
read_env() { grep "^$1=" "$ENV_FILE" | head -1 | cut -d= -f2; }
container_ip() { docker inspect "$1" --format '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'; }
PG_IP=$(container_ip sidelinja-postgres-1)
STDB_IP=$(container_ip sidelinja-spacetimedb-1)
WHISPER_IP=$(container_ip sidelinja-faster-whisper-1 2>/dev/null || echo "")
AI_GW_IP=$(container_ip sidelinja-ai-gateway-1 2>/dev/null || echo "")
LIVEKIT_IP=$(container_ip sidelinja-livekit-1 2>/dev/null || echo "")
cat > /tmp/maskinrommet.env <<EOF
DATABASE_URL=postgres://$(read_env POSTGRES_USER):$(read_env POSTGRES_PASSWORD)@${PG_IP}:5432/synops
SPACETIMEDB_URL=http://${STDB_IP}:3000
SPACETIMEDB_DATABASE=$(read_env SPACETIMEDB_DATABASE)
SPACETIMEDB_TOKEN=$(read_env SPACETIMEDB_TOKEN)
AUTHENTIK_ISSUER=$(read_env AUTHENTIK_ISSUER)
AUTHENTIK_CLIENT_ID=$(read_env AUTHENTIK_CLIENT_ID)
BIND_ADDR=0.0.0.0:3100
CAS_ROOT=/srv/synops/media/cas
WHISPER_URL=http://${WHISPER_IP:-localhost}:8000
AI_GATEWAY_URL=http://${AI_GW_IP:-localhost}:4000
LITELLM_MASTER_KEY=$(read_env LITELLM_MASTER_KEY)
LIVEKIT_URL=http://${LIVEKIT_IP:-localhost}:7880
LIVEKIT_API_KEY=$(read_env LIVEKIT_API_KEY)
LIVEKIT_API_SECRET=$(read_env LIVEKIT_API_SECRET)
PROJECT_DIR=/home/vegard/synops
RUST_LOG=maskinrommet=debug,tower_http=debug
EOF