Running Multiple Apps on One Server: Resource Planning Guide
How many apps can one server handle? Plan CPU, memory, disk, and network for multi-app self-hosting deployments.
The Question
Can I run Nextcloud, Gitea, Grafana, Ghost, and Uptime Kuma on one server? Let's find out.
Memory Budget (The Usual Bottleneck)
Base System
Databases (Shared)
Applications (Typical)
Example: 4 GB Server
CPU Budget
Most self-hosted apps are I/O bound, not CPU bound. They spend time waiting for database queries and network requests.
2 vCPU Server
Handles 5-10 apps easily unless they do compute-heavy work (image processing, AI inference, video transcoding).
Disk Budget
Container Images
Each app: 100 MB - 1 GB. Budget 5-10 GB for images.
Database Data
Varies wildly. 1-10 GB for most small deployments.
Application Data
User uploads, files, media. Budget based on use case.
Logs
1-5 GB if not configured with rotation.
Total
40 GB SSD comfortably holds a 5-8 app deployment.
Practical Setups
2 GB RAM, 1 vCPU, 20 GB
4 GB RAM, 2 vCPU, 40 GB
8 GB RAM, 4 vCPU, 80 GB
Monitoring
Deploy first, then monitor with Grafana + Prometheus. If memory consistently exceeds 80%, upgrade the server. Don't over-provision upfront.
TinyPod's $5 server is the perfect starting point. Monitor, and scale up only when needed.