Skip to main content

Requirements

System requirements for running Brainz Lab.

Software

Required

SoftwareVersionNotes
Docker24.0+With Compose v2
PostgreSQL15+Or use Docker image
Redis7.0+Or use Docker image

Optional

SoftwareVersionNotes
Kubernetes1.28+For k8s deployment
NginxLatestFor reverse proxy
CertbotLatestFor SSL certificates

Hardware

Minimum (Development/Testing)

ResourceRequirement
CPU4 cores
RAM8 GB
Storage50 GB SSD
Network100 Mbps
ResourceRequirement
CPU8+ cores
RAM16+ GB
Storage200+ GB SSD
Network1 Gbps

High-Volume (Enterprise)

ResourceRequirement
CPU16+ cores per node
RAM32+ GB per node
Storage500+ GB SSD per node
Network10 Gbps
Nodes3+ for HA

Database Sizing

PostgreSQL

Storage grows with log and error volume:
Daily VolumeRecommended Storage
1M logs50 GB
10M logs200 GB
100M logs1 TB
Enable retention policies to manage growth:
# Keep logs for 30 days
config.recall_retention_days = 30

Redis

Redis stores:
  • Session data
  • Rate limiting counters
  • Background job queues
Typical memory usage:
Concurrent UsersRedis Memory
1,000256 MB
10,0001 GB
100,0004 GB

Network

Ports

PortServiceAccess
80HTTPPublic
443HTTPSPublic
3000PlatformInternal
4001RecallInternal
4002ReflexInternal
5432PostgreSQLInternal
6379RedisInternal

Firewall Rules

Allow inbound:
  • 80/443 from anywhere (web traffic)
  • 22 from admin IPs (SSH)
Block all other inbound traffic.

DNS

You’ll need DNS records for:
brainzlab.yourdomain.com     → Platform
recall.yourdomain.com        → Recall API
reflex.yourdomain.com        → Reflex API

SSL Certificates

For production, use SSL:
  • Let’s Encrypt (free, auto-renewal)
  • Commercial certificate
  • Self-signed (testing only)

Backup Requirements

Plan for backups:
ComponentBackup Frequency
PostgreSQLDaily + continuous WAL
RedisHourly RDB snapshots
Config filesOn change
Storage for backups:
  • 3x your database size for 7 daily backups
  • Object storage (S3, GCS) recommended