Deployment
LeanCore runs as a containerized application stack deployed via Docker Compose.
Production Environment
| Component | URL |
|---|---|
| Web Application | app.leancoreai.com |
| API Server | server.leancoreai.com |
| Monitoring | ops.leancoreai.com |
Architecture
The production deployment includes:
- Backend API -- Java Spring Boot application
- Frontend -- Vue 3 SPA served via Cloudflare Pages
- Database -- MySQL 8 with multi-tenant schemas
- Vector Store -- Apache Cassandra for semantic search
- MCP Connectors -- 20+ Node.js MCP servers
- Messaging -- Evolution API for WhatsApp
- Observability -- Langfuse for AI tracing
- Monitoring -- Prometheus + Grafana + Tempo
Health Checks
| Service | Health Endpoint |
|---|---|
| Backend API | GET /actuator/health |
| MCP Servers | GET /health |
| Monitoring | Grafana dashboards |
Deployment Process
- Build -- compile backend JAR + build frontend assets
- Docker Build -- create container images
- Deploy -- update running containers
- Verify -- health checks on all services
- Post-Deploy -- reseed skills, generate routing cards if needed
Post-Deploy Steps
After deploying code changes:
- Reseed Default Skills -- ensures new skills are available to all specialists
- Generate Routing Cards -- creates tool discovery metadata for any new tools
- Audit Routing Cards -- verifies all tools have proper routing metadata
Monitoring
Three pre-built Grafana dashboards provide operational visibility:
System Overview
- CPU and memory usage
- Disk utilization
- Network I/O
- Container health and restarts
Application Performance
- JVM heap and garbage collection
- HTTP request rate and latency (p50, p95, p99)
- Error rates by status code
- Database connection pool status
MCP Health Grid
- Server UP/DOWN status (green/red grid)
- Health response times
- Container restarts
- Memory usage per connector