services:
  # REST API server for Windmill integration
  ai-trader:
    # image: ghcr.io/xe138/ai-trader:latest
    # Uncomment to build locally instead of pulling:
    build: .
    container_name: ai-trader
    volumes:
      - ${VOLUME_PATH:-.}/data:/app/data
      - ${VOLUME_PATH:-.}/logs:/app/logs
      - ${VOLUME_PATH:-.}/configs:/app/configs
    environment:
      # AI Model API Configuration
      - OPENAI_API_BASE=${OPENAI_API_BASE}
      - OPENAI_API_KEY=${OPENAI_API_KEY}

      # Data Source Configuration
      - ALPHAADVANTAGE_API_KEY=${ALPHAADVANTAGE_API_KEY}
      - JINA_API_KEY=${JINA_API_KEY}

      # Agent Configuration
      - AGENT_MAX_STEP=${AGENT_MAX_STEP:-30}
    ports:
      # API server port (primary interface for external access)
      - "${API_PORT:-8080}:8080"
    restart: unless-stopped  # Keep API server running
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s
