Ctrl K
ComunidadGuías…

docker-compose.e2e.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
#
# E2E overrides for CORE stack services only.
#
# E2E infrastructure containers (mysql/postgres/minio/mock-github/etc) are intentionally
# NOT defined here. They run as a separate Docker Desktop group:
#   docker compose -f docker-compose.e2e.dbs.yml up -d
#
services:
  # Enable GitHub OAuth in e2e using the mock server (no external network required).
  api-gateway:
    restart: unless-stopped   # gate stack lacks prod overlay's restart policy — see app-tier block below
    environment:
      - GITHUB_CLIENT_ID=e2e_dummy
      - GITHUB_CLIENT_SECRET=e2e_dummy
      - GITHUB_TOKEN_URL=http://mock-github:8080/login/oauth/access_token
      - GITHUB_API_BASE_URL=http://mock-github:8080

  # Ensure core services have MinIO defaults for internal staging.
  orchestrator:
    environment:
      - MINIO_ENDPOINT_URL=http://minio:9000
      - MINIO_ACCESS_KEY_ID=minioadmin
      - MINIO_SECRET_ACCESS_KEY=minioadmin
      - MINIO_REGION=us-east-1
      - MINIO_BUCKET=pipeline-data

  # OOM-stays-dead guard for the gate stack.
  # The data-pipeline gate renders bare base + this e2e overlay (NO prod/staging
  # overlay), so the stateless app tier inherits the base file's no-restart default
  # (left off on purpose so dev sees crashes). On the gate's loaded runner a service
  # can get OOM-killed (exit 137) mid-run and then STAY DEAD — e.g. planner died and
  # never came back, so every batch pipeline failed planning with
  #   Post "http://planner:5011/plan": dial tcp: lookup planner: no such host
  # while CDC (which doesn't replan) stayed green. orchestrator + kafka-mcp-sink-mcp
  # already carry restart in the base; mirror docker-compose.prod.yml's policy here
  # for the remaining app tier so a transient OOM auto-recovers instead of reddening
  # the gate. (Underlying runner-headroom fix is tracked separately.)
  planner:
    restart: unless-stopped
  llm-service:
    restart: unless-stopped
  tool-generator:
    restart: unless-stopped
  temporal-adapter:
    restart: unless-stopped