version: '3'

services:
  security-gateway:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "${GATEWAY_PORT:-3000}:3000"
    environment:
      - API_URL=${API_URL:-http://your-api:8080}
      - DECOY_URL=${DECOY_URL:-http://decoy-api:8081}
      - PORT=3000
      - LOG_FORMAT=combined
      - RATE_LIMIT_ENABLED=true
      - RATE_LIMIT_MAX=100
      - RATE_LIMIT_WINDOW_MS=900000
      - DETECT_SQL_INJECTION=true
      - DETECT_XSS=true
      - DETECT_PATH_TRAVERSAL=true
      - DETECT_COMMAND_INJECTION=true
      - ADD_HONEYPOT_HEADERS=true
      - MODIFY_RESPONSES=true
      - FAKE_POWERED_BY=PHP/7.4.3
      - FAKE_SERVER=Apache/2.4.38
      - ADMIN_DASHBOARD_PATH=/admin/dashboard
    networks:
      - app-network
    depends_on:
      - decoy-api

  decoy-api:
    build:
      context: .
      dockerfile: Dockerfile.decoy
    networks:
      - app-network

networks:
  app-network:
    driver: bridge