# Docker Compose for Caddy SIP Guardian with Docker Proxy integration # # This combines: # - caddy-docker-proxy: Auto-configure HTTP(S) reverse proxy via Docker labels # - caddy-l4: Layer 4 SIP proxying # - caddy-sip-guardian: SIP-aware rate limiting and attack detection # # Usage: # docker compose up -d services: caddy: build: context: . dockerfile: Dockerfile image: caddy-sip-guardian:latest container_name: caddy-sip-guardian restart: unless-stopped ports: - "80:80" - "443:443" - "443:443/udp" # HTTP/3 - "5060:5060/udp" # SIP UDP - "5060:5060/tcp" # SIP TCP - "5061:5061/tcp" # SIP TLS volumes: # Docker socket for caddy-docker-proxy - /var/run/docker.sock:/var/run/docker.sock:ro # Persistent data - caddy_data:/data - caddy_config:/config # Global Caddyfile for Layer 4 config (merged with Docker labels) - ./Caddyfile.global:/etc/caddy/Caddyfile:ro environment: - CADDY_DOCKER_CADDYFILE_PATH=/etc/caddy/Caddyfile - CADDY_INGRESS_NETWORKS=caddy networks: - caddy labels: # Self-managed by caddy-docker-proxy caddy: "" volumes: caddy_data: caddy_config: networks: caddy: external: true