version: '3.8' services: nats: image: nats:2.10-alpine container_name: agent-coordinator-nats command: - '--jetstream' - '--store_dir=/data' - '--http_port=8222' ports: - "4223:4222" - "8223:8222" - "6223:6222" volumes: - nats_data:/data restart: unless-stopped healthcheck: test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:8222/healthz"] interval: 10s timeout: 5s retries: 3 start_period: 10s networks: - agent-coordinator-network agent-coordinator: image: ghcr.io/rooba/agentcoordinator:latest container_name: agent-coordinator environment: - NATS_HOST=nats - NATS_PORT=4222 - MIX_ENV=prod volumes: - ./mcp_servers.json:/app/mcp_servers.json:ro - ./workspace:/workspace:rw ports: - "4000:4000" depends_on: nats: condition: service_healthy restart: unless-stopped networks: - agent-coordinator-network volumes: nats_data: driver: local networks: agent-coordinator-network: driver: bridge