Gauntlet-Incept MCP
by Birdsmith
version: '3.8'
services:
# API Service
api:
build:
context: .
dockerfile: Dockerfile
container_name: gauntlet-incept-api
restart: unless-stopped
ports:
- "3000:3000"
environment:
- NODE_ENV=development
- PORT=3000
- DB_HOST=alphacommoncrawl-core-reboot.cluster-caeuiwckzo1a.us-east-1.rds.amazonaws.com
- DB_PORT=5432
- DB_NAME=core
- DB_USER=postgres
- DB_PASSWORD=${DB_PASSWORD}
- QTI_API_URL=http://qti-service:4000
- QTI_API_KEY=${QTI_API_KEY:-development_key}
- LLM_API_URL=http://llm-service:5000
- LLM_API_KEY=${LLM_API_KEY}
- LLM_MODEL=gpt-4
volumes:
- ./src:/app/src
- ./docs:/app/docs
depends_on:
- qti-service
- llm-service
networks:
- gauntlet-network
command: npm start
# MCP Server
mcp-server:
build:
context: .
dockerfile: Dockerfile
container_name: gauntlet-incept-mcp
restart: unless-stopped
ports:
- "3001:3001"
environment:
- NODE_ENV=development
- PORT=3001
- DB_HOST=alphacommoncrawl-core-reboot.cluster-caeuiwckzo1a.us-east-1.rds.amazonaws.com
- DB_PORT=5432
- DB_NAME=core
- DB_USER=postgres
- DB_PASSWORD=${DB_PASSWORD}
- QTI_API_URL=http://qti-service:4000
- QTI_API_KEY=${QTI_API_KEY:-development_key}
- LLM_API_URL=http://llm-service:5000
- LLM_API_KEY=${LLM_API_KEY}
- LLM_MODEL=gpt-4
volumes:
- ./src:/app/src
- ./docs:/app/docs
depends_on:
- qti-service
- llm-service
networks:
- gauntlet-network
command: npm run mcp
# QTI Service
qti-service:
build:
context: ./services/qti-service
dockerfile: Dockerfile
container_name: gauntlet-incept-qti
restart: unless-stopped
ports:
- "4000:4000"
environment:
- NODE_ENV=development
- PORT=4000
- DB_HOST=alphacommoncrawl-core-reboot.cluster-caeuiwckzo1a.us-east-1.rds.amazonaws.com
- DB_PORT=5432
- DB_NAME=core
- DB_USER=postgres
- DB_PASSWORD=${DB_PASSWORD}
volumes:
- ./services/qti-service:/app
networks:
- gauntlet-network
# LLM Service
llm-service:
build:
context: ./services/llm-service
dockerfile: Dockerfile
container_name: gauntlet-incept-llm
restart: unless-stopped
ports:
- "5000:5000"
environment:
- NODE_ENV=development
- PORT=5000
- OPENAI_API_KEY=${OPENAI_API_KEY}
volumes:
- ./services/llm-service:/app
networks:
- gauntlet-network
# Frontend Application
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: gauntlet-incept-frontend
restart: unless-stopped
ports:
- "8080:80"
volumes:
- ./frontend:/app
depends_on:
- api
networks:
- gauntlet-network
postgres:
image: pgvector/pgvector:pg17
container_name: postgres-vector
restart: always
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: core
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
- ./init-scripts:/docker-entrypoint-initdb.d
- ./core.dump:/tmp/core.dump
networks:
gauntlet-network:
driver: bridge
volumes:
postgres_data: