Cost-optimized 10-inch mini rack builds for Raspberry Pi clusters, K3s homelabs, and PoE-powered SBC nodes. Four verified bills-of-materials from $242 to $541, priced with a mixed-integer linear program.
- What is a 10-Inch Mini Rack?
- Build Comparison
- Build 1 — Lean ($242)
- Build 2 — Balanced ($362) ✅ Recommended
- Build 3 — Spacious 8U ($432)
- Build 4 — Premium MikroTik ($541)
- Rack Space Planner
- Upgrade Paths
- Pi Compute Costs
- Software Stack
- Community and Inspiration
A 10-inch mini rack (also called a half-width rack or SOHO rack) follows the standard 1U height (44.45 mm) of a full 19-inch server rack but narrows the width to ~236 mm between mounting holes. The result is a desktop- or shelf-mountable enclosure that fits consumer networking gear, Raspberry Pi clusters, and mini PCs — without the footprint of a full data-center rack.
Key specs:
- Width between holes: 236.525 mm (9.312 in)
- Usable horizontal clearance: ~210 mm (8.27 in)
- 1U height: 44.45 mm (1.75 in) — same as 19" racks
- Screw standard: 10/32, 12/24, or cage-nut square holes
These builds target the DeskPi RackMate open-frame series, which is the most widely available 10" rack in the US homelab market and directly compatible with the GeeekPi SBC shelf ecosystem.
All builds include a PoE+ switch, so Raspberry Pi nodes draw power directly from the network cable — no per-node USB-C bricks needed.
| Build 1 — Lean | Build 2 — Balanced | Build 3 — Spacious | Build 4 — Premium | |
|---|---|---|---|---|
| Total cost | $242 | $362 | $432 | $541 |
| Rack | T0 4U | T0 4U | T1 8U | T1 8U |
| Switch | YuanLey 1G PoE+ | YuanLey 1G PoE+ | YuanLey 2.5G PoE+ | MikroTik managed PoE+ |
| Pi slots | 4 | 4 | 4 (expandable to 10) | 4 (expandable to 10) |
| Patch panel | — | ✓ | ✓ | ✓ |
| UPS | — | ✓ | ✓ | ✓ |
| Managed switch | — | — | — | ✓ VLAN / QoS |
| SFP uplinks | — | — | — | ✓ 4× SFP |
| Headroom | None | None | 3.5U free | 3.5U free |
| Best for | "I have Pis, ship it" | K3s starter cluster | Room to grow | Multi-tenant / prod-like |
Prices verified May 2026. Amazon pricing fluctuates — check links for current rates.
The minimum viable Pi cluster rack. Every slot is filled; no room for extras. Perfect if you already have Pi boards and want to spend as little as possible on the rack infrastructure.
| Component | Unit | Qty | Unit Price | Total | Link |
|---|---|---|---|---|---|
| DeskPi RackMate T0 — 4U open-frame 10" rack | rack | 1 | $89.99 | $89.99 | Amazon |
| YuanLey YS2083GS-P — 8-port 1G PoE+ switch (1U, rack ears incl.) | switch | 1 | $59.98 | $59.98 | Amazon |
| GeeekPi SBC Shelf 1U — holds 2× Raspberry Pi 4/5 | shelf | 2 | $17.99 | $35.98 | Amazon |
| Tupavco TP1713 — 4-outlet 1U mini rack PDU | PDU | 1 | $45.00 | $45.00 | Amazon |
| Cable Matters Cat6 patch cables 1 ft — 10-pack | cables | 1 | $10.99 | $10.99 | Amazon |
| Total | $241.94 |
┌─────────────────────────┐
│ YuanLey 8-port PoE+ │ 1U ← switch
│ SBC Shelf (Pi A + B) │ 1U ← nodes 1–2
│ SBC Shelf (Pi C + D) │ 1U ← nodes 3–4
│ Tupavco PDU │ 1U ← power
└─────────────────────────┘
Tripp Lite UPS ← sits in T0 base tray (upgrade later)
- 4U is completely packed — no headroom for additional nodes or accessories
- The T0 base tray fits a Tripp Lite BC600R UPS ($97) if you add one later (no rack U consumed)
- Direct-connect Pi-to-switch cables only; no patch panel in this build
- PoE budget on YuanLey YS2083GS-P: 8× ports at up to 30W PoE+ each (120W total max)
Adds a patch panel for clean cable runs and a UPS for brownout protection, while staying under $400. This is the template Jeff Geerling used for his Mini Rack 002 (K3s Pi cluster).
| Component | Unit | Qty | Unit Price | Total | Link |
|---|---|---|---|---|---|
| DeskPi RackMate T0 — 4U open-frame 10" rack | rack | 1 | $89.99 | $89.99 | Amazon |
| YuanLey YS2083GS-P — 8-port 1G PoE+ switch | switch | 1 | $59.98 | $59.98 | Amazon |
| GeeekPi SBC Shelf 1U — 2× Pi slots | shelf | 2 | $17.99 | $35.98 | Amazon |
| Tupavco TP1713 — 4-outlet 1U PDU | PDU | 1 | $45.00 | $45.00 | Amazon |
| GeeekPi Cat6 12-port Patch Panel — 0.5U | panel | 1 | $22.99 | $22.99 | Amazon |
| Tripp Lite BC600R — 600VA/300W UPS (base mount) | UPS | 1 | $97.00 | $97.00 | Amazon |
| Cable Matters Cat6 patch cables 1 ft — 10-pack | cables | 1 | $10.99 | $10.99 | Amazon |
| Total | $361.93 |
┌─────────────────────────┐
│ YuanLey 8-port PoE+ │ 1U
│ GeeekPi Patch Panel │ 0.5U
│ SBC Shelf (Pi A + B) │ 1U
│ SBC Shelf (Pi C + D) │ 1U
│ Tupavco PDU │ 1U
└─────────────────────────┘
[ Tripp Lite BC600R UPS ] ← base tray, no U consumed
- Patch panel is 0.5U — it shares a slot with the 0.5U gap above the switch; a tight but clean fit
- UPS sits in the T0's built-in base tray (confirmed fit by community)
- 38 under the $400 ceiling — add a GeeekPi vented blank panel ($11.99) for airflow and still clear $400
- Upgrade to Build 3 later by buying a T1 8U and sliding your components in
Bumps to a T1 8U rack and a 2.5G PoE+ switch. The extra rack space gives 3.5U of headroom to expand to 10 Pi nodes without touching the infrastructure. Raspberry Pi 5 benefits from 2.5G bandwidth on NVMe-backed nodes.
| Component | Unit | Qty | Unit Price | Total | Link |
|---|---|---|---|---|---|
| DeskPi RackMate T1 — 8U open-frame 10" rack | rack | 1 | $119.99 | $119.99 | Amazon |
| YuanLey 10-port 2.5G PoE+ switch (1U, rack ears incl.) | switch | 1 | $99.99 | $99.99 | Amazon |
| GeeekPi SBC Shelf 1U — 2× Pi slots | shelf | 2 | $17.99 | $35.98 | Amazon |
| Tupavco TP1713 — 4-outlet 1U PDU | PDU | 1 | $45.00 | $45.00 | Amazon |
| GeeekPi Cat6 12-port Patch Panel — 0.5U | panel | 1 | $22.99 | $22.99 | Amazon |
| Tripp Lite BC600R — 600VA/300W UPS | UPS | 1 | $97.00 | $97.00 | Amazon |
| Cable Matters Cat6 patch cables 1 ft — 10-pack | cables | 1 | $10.99 | $10.99 | Amazon |
| Total | $431.94 |
┌─────────────────────────┐
│ YuanLey 2.5G PoE+ │ 1U
│ GeeekPi Patch Panel │ 0.5U
│ SBC Shelf (Pi A + B) │ 1U
│ SBC Shelf (Pi C + D) │ 1U
│ Tupavco PDU │ 1U
│ [OPEN] │ 1U ← add shelves / vented blank
│ [OPEN] │ 1U ← future node expansion
│ [OPEN] │ 1U ← future node expansion
└─────────────────────────┘
[ Tripp Lite BC600R UPS ] ← base tray
Add three more GeeekPi SBC Shelf 1U units ($17.99 × 3 = $53.97) to fill the 3 open slots and hold Pi nodes 5–10. Total with expansion: $485.91.
Alternatively, replace the 2× 1U shelves with 2× GeeekPi 2U NVMe Mount ($99.99 each) for Pi 5 nodes with M.2 NVMe drives (persistent storage, etcd). That swap adds $163.99, bringing the build to $595.93 — still under $600.
- 2.5G switch future-proofs Pi 5 bandwidth; Pi 5 has a real Gigabit port that will saturate 1G on large file transfers
- The T1's 8U gives room to run a dedicated control-plane node separate from worker nodes (K3s best practice)
- 3.5U of headroom also accommodates a GeeekPi DC PDU Lite for 12V device power without eating into AC outlet count
Swaps in a MikroTik CRS112-8P-4S-IN: a fully managed switch with per-port VLAN isolation, per-port PoE budget control, and 4× SFP uplinks for 10G fiber expansion. The solver chose YuanLey 2.5G over MikroTik in Build 3 to save $109 — this build deliberately picks MikroTik for the management plane features.
| Component | Unit | Qty | Unit Price | Total | Link |
|---|---|---|---|---|---|
| DeskPi RackMate T1 — 8U open-frame 10" rack | rack | 1 | $119.99 | $119.99 | Amazon |
| MikroTik CRS112-8P-4S-IN — managed 8× 1G PoE+ / 4× SFP | switch | 1 | $209.00 | $209.00 | Amazon |
| MikroTik RMK-2/10 rack mount kit (required for 10" rack) | accessory | 1 | $9.00 | $9.00 | Amazon |
| GeeekPi SBC Shelf 1U — 2× Pi slots | shelf | 2 | $17.99 | $35.98 | Amazon |
| Tupavco TP1713 — 4-outlet 1U PDU | PDU | 1 | $45.00 | $45.00 | Amazon |
| GeeekPi Cat6 12-port Patch Panel — 0.5U | panel | 1 | $22.99 | $22.99 | Amazon |
| Tripp Lite BC600R — 600VA/300W UPS | UPS | 1 | $97.00 | $97.00 | Amazon |
| Cable Matters Cat6 patch cables 1 ft — 10-pack | cables | 1 | $10.99 | $10.99 | Amazon |
| Total | $549.95 |
┌─────────────────────────┐
│ MikroTik CRS112-8P │ 1U ← managed PoE, 4× SFP uplinks
│ GeeekPi Patch Panel │ 0.5U
│ SBC Shelf (Pi A + B) │ 1U
│ SBC Shelf (Pi C + D) │ 1U
│ Tupavco PDU │ 1U
│ [OPEN] │ 1U
│ [OPEN] │ 1U
│ [OPEN] │ 1U
└─────────────────────────┘
[ Tripp Lite BC600R UPS ] ← base tray
| Feature | YuanLey 2.5G PoE+ | MikroTik CRS112-8P-4S-IN |
|---|---|---|
| Per-port VLAN (802.1Q) | — | ✓ |
| Per-port PoE budget cap | — | ✓ |
| SFP uplinks | — | 4× 1G SFP |
| RouterOS / SwOS GUI | — | ✓ |
| Spanning tree (RSTP) | — | ✓ |
| Port mirroring | — | ✓ |
| Link speed | 2.5G | 1G |
| 10" rack-native | ✓ | ✓ (with RMK-2/10 kit) |
MikroTik is worth it when you want VLAN-isolated node networks (separate control-plane / worker / storage VLANs), or when you plan to add a 10G SFP NAS later.
Use this table to plan U allocations across both rack sizes.
| Component | U Height | Fits T0 (4U)? | Fits T1 (8U)? |
|---|---|---|---|
| YuanLey YS2083GS-P switch | 1U | ✓ | ✓ |
| YuanLey 2.5G switch | 1U | ✓ | ✓ |
| MikroTik CRS112-8P | 1U | ✓ | ✓ |
| GeeekPi Patch Panel | 0.5U | tight | ✓ |
| GeeekPi SBC Shelf (2× Pi) | 1U | ✓ | ✓ |
| GeeekPi 2U NVMe Pi Mount (4× Pi + M.2) | 2U | — | ✓ |
| Tupavco TP1713 PDU | 1U | ✓ | ✓ |
| GeeekPi Vented Blank Panel | 1U | — | ✓ |
| Tripp Lite BC600R UPS | base tray | ✓ (T0 base) | ✓ (T1 base) |
T0 4U fully packed: switch (1U) + patch panel (0.5U) + 2× SBC shelf (2U) + PDU (1U) = 4.5U → patch panel must share the 0.5U gap above the switch.
T1 8U with Build 3/4: 4.5U used, 3.5U for future nodes.
Build 1 ($242)
└─ + UPS + patch panel → Build 2 ($362)
└─ + T1 rack + 2.5G switch → Build 3 ($432)
└─ + MikroTik swap → Build 4 ($541)
└─ + 3× SBC shelves (6 more Pi slots) → $596
└─ + NVMe 2U mounts → $596–$630
All components except the rack itself transfer between T0 and T1. Upgrading the rack is a drop-in swap.
Rack infrastructure only — add your Pi boards:
| Board | RAM | Approx. Price | PoE HAT needed? |
|---|---|---|---|
| Raspberry Pi 5 | 4 GB | ~$60 | PoE+ HAT (~$20) |
| Raspberry Pi 5 | 8 GB | ~$80 | PoE+ HAT (~$20) |
| Raspberry Pi 4B | 4 GB | ~$45 | PoE+ HAT (~$20) |
| Raspberry Pi 4B | 8 GB | ~$75 | PoE+ HAT (~$20) |
The YuanLey and MikroTik switches supply PoE+ (802.3at, up to 30W per port). All Raspberry Pi 4/5 boards need a PoE+ HAT to draw power from the switch — they do not support PoE natively.
4-node Pi 5 8GB cluster add-on cost: 4 × ($80 + $20) = $400
Full 4-node Build 2 + Pi 5 stack: $362 + $400 = $762
These builds are sized for the following open-source cluster stacks:
| Software | Purpose | Notes |
|---|---|---|
| K3s | Lightweight Kubernetes | Jeff Geerling's Pi Cluster repo has full Ansible playbooks |
| Ansible | Provisioning | Automate OS setup, K3s install, app deploy |
| Longhorn | Distributed block storage | Needs NVMe drives — use GeeekPi 2U NVMe mount |
| Portainer | Docker / Swarm UI | Lighter than K3s if you don't need k8s |
| Pi-hole | Network-wide DNS filtering | Dedicate one Pi node, no extra cost |
| Netdata | Real-time node monitoring | Works well on Pi 4/5 |
Recommended starting point: geerlingguy/pi-cluster — a complete Ansible-driven K3s cluster playbook designed for exactly this hardware tier.
Build costs were computed using a mixed-integer linear program (MILP) solved by agent-calc:
Minimize: Σ(price_i × x_i)
Subject to:
x_rack_T0 + x_rack_T1 = 1 (exactly one rack)
x_sw_budget + x_sw_mid + x_sw_pro = 1 (exactly one switch)
2·x_shelf_1u + 4·x_shelf_2u ≥ 4 (at least 4 Pi slots)
Σ(price_i × x_i) ≤ budget (budget constraint)
x_ups ≥ 1 (UPS required — Build 2+)
x_patch_panel ≥ 1 (panel required — Build 2+)
The solver consistently chose the smallest rack and cheapest PoE switch that satisfied constraints — MikroTik never appears without being forced by a hard constraint, confirming it is a deliberate features-over-cost upgrade rather than a cost-optimal choice.
- geerlingguy/mini-rack — the canonical 10-inch mini rack reference, maintained by Jeff Geerling. Component tables and build showcase were essential reference material for this repo.
- r/minilab — active community for mini rack and compact homelab builds.
- r/homelab — broader homelab community.
- Jeff Geerling's YouTube — video walkthroughs of each of his own builds.
MIT — see LICENSE.
As an Amazon Associate I earn from qualifying purchases. Prices are point-in-time estimates (May 2026) — verify before purchasing.