Services Overview¶
Aegis runs as a Docker Compose stack with 5 core services.
Service Architecture¶
graph TB
subgraph External["External Traffic"]
Internet[Internet]
end
subgraph Stack["Docker Compose Stack"]
Traefik[Traefik<br/>:80, :443]
Dashboard[Dashboard<br/>:8080]
Scheduler[Scheduler]
Playwright[Playwright<br/>:3002]
FalkorDB[FalkorDB<br/>:6379]
end
subgraph Host["Host Services"]
PostgreSQL[PostgreSQL<br/>:5432]
Ollama[Ollama<br/>:11434]
end
Internet --> Traefik
Traefik --> Dashboard
Dashboard --> PostgreSQL
Dashboard --> Ollama
Dashboard --> FalkorDB
Scheduler --> PostgreSQL
Scheduler --> Playwright
Service Status¶
| Service | Container | Port | Health |
|---|---|---|---|
| Dashboard | aegis-dashboard | 8080 | /health |
| Scheduler | aegis-scheduler | - | inherits |
| Traefik | traefik | 80, 443 | /ping |
| FalkorDB | falkordb | 6379 | redis PING |
| Playwright | aegis-playwright | 3002 | /health |
| PostgreSQL | host service | 5432 | pg_isready |
Startup Order¶
- traefik - Starts independently (external network)
- falkordb - Starts independently (data persistence)
- dashboard - Depends on traefik (health check required)
- playwright - Starts independently
- scheduler - Depends on dashboard + playwright
Management Commands¶
# Start all services
cd ~/projects/aegis-core && docker compose up -d
# View status
docker compose ps
# View logs
docker compose logs -f dashboard
# Restart single service
docker compose restart dashboard
# Rebuild and restart
docker compose up -d --build dashboard
# Stop all
docker compose down
Health Monitoring¶
All services have health checks:
# Quick status
docker ps --format "table {{.Names}}\t{{.Status}}"
# Detailed health
docker inspect aegis-dashboard | jq '.[0].State.Health'
# All endpoints
curl -s http://localhost:8080/health | jq .
curl -s http://localhost:3002/health
redis-cli -p 6379 ping
Resource Usage¶
# Real-time stats
docker stats --no-stream
# Current usage (typical)
# aegis-dashboard: ~500MB memory
# aegis-scheduler: ~300MB memory
# aegis-playwright: ~200MB memory
# falkordb: ~100MB memory
# traefik: ~50MB memory
Documentation¶
- Dashboard - FastAPI web application
- Scheduler - APScheduler background jobs
- Traefik - Reverse proxy and SSL
- FalkorDB - Knowledge graph database
- PostgreSQL - Main database
- Playwright - Browser automation
Last Updated: 2026-01-25