services: colony: build: context: ../.. dockerfile: infra/colony/Dockerfile container_name: colony environment: - PORT=3001 - DATABASE_URL=sqlite:/data/colony.db?mode=rwc volumes: - colony_data:/data # No ports exposed — Caddy reverse proxies on internal network expose: - "3001" restart: always healthcheck: test: ["CMD", "curl", "-f", "http://localhost:3001/api/health"] interval: 10s timeout: 3s retries: 3 caddy: image: caddy:2.11 container_name: colony-caddy ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile:ro - caddy_data:/data - caddy_config:/config restart: always depends_on: colony: condition: service_healthy volumes: colony_data: caddy_data: caddy_config: