services: backend: build: . restart: unless-stopped ports: - "8003:8000" environment: - DATABASE_URL=postgresql://postgres:postgres@postgres:5432/maverick_mcp - REDIS_HOST=redis # Optional BYOK LLM settings (research extra) - LLM_PROVIDER=${LLM_PROVIDER:-} - LLM_API_KEY=${LLM_API_KEY:-} - LLM_MODEL=${LLM_MODEL:-} - LLM_BASE_URL=${LLM_BASE_URL:-} - EXA_API_KEY=${EXA_API_KEY:-} - LOG_LEVEL=${LOG_LEVEL:-info} # No healthcheck: the new server exposes no HTTP /health endpoint (it is # an MCP server, not a REST API). volumes: - ./maverick:/app/maverick - ./.env:/app/.env stop_grace_period: 30s depends_on: postgres: condition: service_healthy redis: condition: service_healthy deploy: resources: limits: cpus: "1.0" memory: 1024M postgres: image: postgres:15-alpine restart: unless-stopped environment: - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres - POSTGRES_DB=maverick_mcp healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 10s timeout: 5s retries: 5 start_period: 10s volumes: - postgres-data:/var/lib/postgresql/data ports: - "5432:5432" deploy: resources: limits: cpus: "0.5" memory: 512M redis: image: redis:7-alpine restart: unless-stopped healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 start_period: 5s volumes: - redis-data:/data ports: - "6379:6379" deploy: resources: limits: cpus: "0.25" memory: 256M volumes: postgres-data: redis-data: