Resource Requirements¶
TruSpace runs as a set of Docker containers. The resources required depend heavily on whether AI features are enabled and how many concurrent users and documents the deployment needs to support.
Estimates in progress
These are initial estimates based on development and testing environments. Requirements will be refined as more production data becomes available. If you have specific workloads, monitor performance and scale accordingly.
General Requirements¶
| Component | Minimum | Recommended |
|---|---|---|
| CPU | 1 vCPU | 2+ vCPU |
| RAM | 8 GB | 16 GB |
| Storage | 10 GB | 100 GB |
| OS | Linux 64-bit | Ubuntu 22.04 LTS |
| Docker | 20.10+ | Latest stable |
RAM is the critical resource
The local AI model (Ollama) is the largest consumer. A llama3.2:3b model alone requires ~4 GB of RAM at runtime. Plan accordingly or disable AI on constrained hardware.
Per-Deployment Profile¶
| Profile | RAM | Storage | Notes |
|---|---|---|---|
| Minimal (no AI) | 4 GB | 10 GB | --no-ai flag or DISABLE_ALL_AI_FUNCTIONALITY=true |
| Standard | 8 GB | 50 GB | Small team, lightweight model (phi3, llama3.2:3b) |
| Recommended | 16 GB | 100 GB+ | Multi-user, larger models, IPFS replication |
| Raspberry Pi | 4 GB | 32 GB SD + SSD | Pi ⅘ only, use tinyllama or no-AI mode |
AI Model RAM Usage¶
| Model | Disk Size | RAM at Runtime |
|---|---|---|
tinyllama |
637 MB | ~2 GB |
phi3 |
2.2 GB | ~4 GB |
llama3.2:3b |
2.0 GB | ~4 GB |
llama3.2:7b |
4.7 GB | ~8 GB |
mistral |
4.1 GB | ~8 GB |
For faster AI inference, a GPU with NVIDIA Container Toolkit is recommended. Without a GPU, inference runs on CPU and can take minutes per document on smaller hardware.
Storage Growth¶
IPFS stores all document versions immutably. Storage usage grows over time:
- Each uploaded document version is pinned permanently until explicitly unpinned
- Multiple connected nodes each store a copy of pinned content
- AI perspectives and metadata are also stored in IPFS
Monitor storage with:
# Total Docker volume usage
docker system df
# IPFS-specific repo stats
docker exec ipfs0 ipfs repo stat
Container Resource Limits¶
For constrained environments, cap individual containers with a docker-compose.override.yml:
services:
backend:
deploy:
resources:
limits:
cpus: '1'
memory: 512M
ipfs0:
deploy:
resources:
limits:
cpus: '2'
memory: 1G
environment:
- IPFS_PROFILE=lowpower
ollama:
deploy:
resources:
limits:
cpus: '4'
memory: 4G
frontend:
deploy:
resources:
limits:
memory: 256M
Related¶
- Installation Options — choose the right deployment profile
- Raspberry Pi Setup — low-power deployment guide
- AI Configuration — model selection and GPU setup
- Maintenance — monitoring resource usage over time