- Frontend: Vite + React + TypeScript chat interface - Backend: FastAPI gateway with LangGraph routing - Knowledge Service: ChromaDB RAG with Gitea scraper - LangGraph Service: Multi-agent orchestration - Airflow: Scheduled Gitea ingestion DAG - Documentation: Complete plan and implementation guides Architecture: - Modular Docker Compose per service - External ai-mesh network for communication - Fast rebuilds with /app/packages pattern - Intelligent agent routing (no hardcoded keywords) Services: - Frontend (5173): React chat UI - Chat Gateway (8000): FastAPI entry point - LangGraph (8090): Agent orchestration - Knowledge (8080): ChromaDB RAG - Airflow (8081): Scheduled ingestion - PostgreSQL (5432): Chat history Excludes: node_modules, .venv, chroma_db, logs, .env files Includes: All source code, configs, docs, docker files
25 lines
583 B
YAML
25 lines
583 B
YAML
services:
|
|
knowledge-service:
|
|
build: .
|
|
image: sam/knowledge-service:latest
|
|
container_name: knowledge-service
|
|
ports:
|
|
- "8080:8080"
|
|
volumes:
|
|
# Only mount the code directory, not packages
|
|
- ./data:/app/code/data
|
|
- ./chroma_db:/app/code/chroma_db
|
|
- ./main.py:/app/code/main.py:ro # Read-only mount for safety
|
|
environment:
|
|
- PYTHONUNBUFFERED=1
|
|
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
|
|
- PYTHONPATH=/app/packages
|
|
networks:
|
|
- ai-mesh
|
|
restart: unless-stopped
|
|
|
|
networks:
|
|
ai-mesh:
|
|
external: true
|
|
|