Files
backspace/Caddyfile
T
Jannis Braun 617999500b feat: all-in-one production deployment with install script
Redesign deployment as a single docker-compose with Backspace, Caddy
(auto-HTTPS), and LiveKit (voice/video) using hybrid networking:
Backspace+Caddy on isolated bridge, LiveKit on host mode for WebRTC.

- Add install.sh: interactive installer that handles Docker setup,
  domain/DNS verification, secret generation, LiveKit config, and
  deployment with health-check wait
- Add Caddyfile: static reverse proxy config using Caddy env vars,
  routes /livekit/* to host-mode LiveKit via host.docker.internal
- Rewrite docker-compose.yml: all-in-one with profiles (voice),
  no external volumes/networks, bind mount ./data for visibility
- Fix livekit.ts: use LIVEKIT_URL env var directly instead of
  Host-header derivation that made the env var dead code
- Fix Dockerfile: health check reads $PORT dynamically
- Update .env.example: add DOMAIN, COMPOSE_PROFILES documentation
- Update .gitignore: add livekit.yaml (contains secrets)
2026-03-03 19:51:51 +01:00

13 lines
420 B
Caddyfile

# Backspace — Caddy reverse proxy configuration
# DOMAIN is read from the container environment (set via docker-compose.yml)
{$DOMAIN} {
# LiveKit signaling — strip /livekit prefix, forward to host-mode LiveKit
handle_path /livekit/* {
reverse_proxy host.docker.internal:7880
}
# Backspace API, WebSocket, and frontend — Docker DNS resolves "backspace"
reverse_proxy backspace:3000
}