Requirements

Hardware sizing, platform compatibility, OS support, and network requirements.

About

Hardware tiers, supported platforms, and the network ports each service uses. Read this first to size your environment before running Docker Compose.

Hardware tiers

TierUse caseCPURAMDisk
EvaluationLocal trial, single user4 cores8 GB20 GB
Team1–20 users, regular eval runs8 cores16 GB50 GB
Production20+ users, high throughput16+ cores32+ GB200 GB+ SSD

Resource drivers: ClickHouse and Temporal worker each hold ~1 GB RAM at steady state. First image build is ~6 GB disk. ClickHouse grows with trace volume; Postgres stays small.

Tip

Docker Desktop (Mac/Windows): Settings → Resources → set RAM ≥ 8 GB, disk ≥ 64 GB. The defaults (2–4 GB RAM) will OOM-kill ClickHouse or the backend.

Software

RequirementMinimumVerify
Docker Engine24.0+docker --version
Docker Composev2.20+docker compose version
brew install docker docker-compose colima
colima start --cpu 4 --memory 8 --disk 64

Or install Docker Desktop for Mac and allocate ≥ 8 GB RAM in Settings → Resources.

sudo apt-get install -y docker.io docker-compose-v2
sudo systemctl enable --now docker
sudo usermod -aG docker $USER   # log out and back in

Install Docker Desktop for Windows with WSL 2 backend. Allocate ≥ 8 GB RAM in Settings → Resources.

Platform compatibility

The code-executor service requires privileged: true. Platforms that block it will crash the service; the rest of the stack still runs.

PlatformSupportedNotes
Linux bare metal / EC2 / GCE / Azure VMYesFull support
GKE / EKS with privileged enabledYesRequires PodSecurityPolicy exception
ECS FargateNoprivileged: true not supported
Google Cloud RunNoSame
Render / Railway / Fly.ioNoManaged platforms block privileged mode

Ports reference

All ports are configurable via .env.

ServiceDefaultExposed to.env key
Frontend30000.0.0.0FRONTEND_PORT
Backend API80000.0.0.0BACKEND_PORT
Gateway8090Internal onlyGATEWAY_PORT
Model serving8080Internal onlySERVING_PORT
Code executor8060Internal onlyCODE_EXECUTOR_PORT
Postgres5432127.0.0.1 (dev: public)PG_PORT
ClickHouse HTTP8123127.0.0.1 (dev: public)CH_HTTP_PORT
ClickHouse TCP9000127.0.0.1 (dev: public)CH_PORT
Redis6379127.0.0.1 (dev: public)REDIS_PORT
MinIO API9005127.0.0.1MINIO_API_PORT
MinIO console9006127.0.0.1MINIO_CONSOLE_PORT
Temporal7233127.0.0.1 (dev: public)TEMPORAL_PORT
Temporal UI8085Dev mode onlyTEMPORAL_UI_PORT
PeerDB server9900127.0.0.1PEERDB_PORT
PeerDB UI30010.0.0.0PEERDB_UI_PORT

In production, only the frontend and backend ports should be internet-facing, and only behind a TLS-terminating reverse proxy.

Next Steps

Was this page helpful?

Questions & Discussion