Skip to main content

# Server Requirements

This page describes hardware specifications for hosting CoderFlow. Three tiers are provided as starting points; pick the one that matches your expected workload. All tiers assume a Linux distribution (Ubuntu Server LTS is recommended) with Docker as the container runtime.

## Configuration Tiers​

Component | Light Workload | Medium Workload | Heavy Workload
--- | --- | --- | ---
CPU | 4–8 vCPUs | 8–12 vCPUs | 16+ vCPUs
RAM | 16 GB | 32 GB | 64 GB+
Storage Type | SSD (SATA or NVMe) | NVMe SSD | NVMe SSD (RAID optional)
Storage Size | 256–512 GB | 512 GB – 1 TB | 1 TB+
Network | 1 Gbps | 1–10 Gbps | 10 Gbps+
OS | Linux | Linux | Linux

## Critical Requirements​

### Storage​

warning

SSD storage is required. Spinning disks (HDDs) create severe I/O bottlenecks for container image pulls, layer caching, and volume mounts, and will make the server feel slow even under light load.

When possible, put Docker's data directory (`/var/lib/docker`) on a separate volume from the OS partition. This keeps container churn from competing with the OS for I/O and makes it easier to grow or replace storage independently.

### Memory​

Reserve 2–4 GB of RAM for the host operating system and the container runtime itself; the remainder is available for running tasks.

Swap (sized roughly equal to physical RAM) can help absorb short bursts of memory pressure, but only enable it on SSD-backed storage — swapping to a spinning disk will tank performance.

### Network​

Make sure the server has enough bandwidth to pull container images quickly, especially when building or refreshing environments.

If CoderFlow connects to external servers or services — for example, an IBM i system — host it on the same network and as physically close to those systems as possible. Round-trip latency between CoderFlow and the systems it works with has a noticeable impact on source import, build, and debug workflows.