I Turned an Ikea Kallax Into a 10-Inch Rack Homelab With the ZimaCube 2

Eva Wong is the Technical Writer and resident tinkerer at ZimaSpace. A lifelong geek with a passion for homelabs and open-source software, she specializes in translating complex technical concepts into accessible, hands-on guides. Eva believes that self-hosting should be fun, not intimidating. Through her tutorials, she empowers the community to demystify hardware setups, from building their first NAS to mastering Docker containers.

💡 Community Spotlight: u/Ambitious_Shallot_79, r/minilab

Rack-mounted homelabs sound great until you remember they need an actual rack. Something with rails, mounting ears, a dedicated spot in the basement or garage. Something that looks — and sounds — like enterprise infrastructure invaded your home.

The 10-inch mini rack movement is the antidote. And the ZimaCube 2, it turns out, was practically designed for it.

I just finished my 10-inch Kallax homelab rack. Three Proxmox compute nodes, a dedicated firewall appliance, two ZimaBlades, and one ZimaCube 2 sitting at the bottom as the storage foundation. Everything 3D-printed. Everything fits inside a single Ikea Kallax cube. Everything runs quieter than a DVR.

Here is the build breakdown — the hardware, the prints, the layout decisions, and why the ZimaCube 2 turned out to be the keystone that made the whole thing work.

White 10-inch Kallax homelab rack panel with ZimaCube 2, front ventilation grille, Ethernet ports, USB ports, and cabinet-mounted cooling design

The 10-Inch Rack Problem (and Why the ZimaCube 2 Solved It)

Standard 19-inch racks are overkill for a home setup. They are deep enough for datacenter servers that most homelabbers are not running. They take up floor space. They are ugly. And if you live in an apartment or share your living space, they are essentially impossible to justify.

The 10-inch rack format solves the physical footprint problem. But it creates a new one: most hardware does not fit.

📐 The internal width of a standard 10-inch rack is roughly 220mm. The ZimaCube 2 is 240 × 221 × 220 mm. That is not a coincidence — it is essentially a 10-inch rack device in a desktop chassis. Rotate it 90 degrees, and it slides into a 10-inch shelf like it was designed for it.

A full-sized NAS with six drive bays, 10GbE networking, and a PCIe expansion slot has no business fitting in this form factor. But the ZimaCube 2 does — and that single fact changes what is possible in a mini rack build.

Complete 10-inch Kallax homelab rack with Zyxel switch, patch cables, ZimaBlade nodes, firewall appliance, vent panels, and ZimaCube 2 storage server

The Rack Layout (Top to Bottom)

Here is how I stacked the rack from the top shelf down:

Position Hardware Role
Top shelf Patch panel + 10-inch managed switch Cable management, network distribution
Row 2 3× Proxmox compute nodes VM/CT workloads, ZFS replication
Row 3 2× ZimaBlade Frigate NVR (Coral TPU), lightweight services
Row 4 Firewall appliance OPNsense, VLAN routing, WAN termination
Bottom ZimaCube 2 10GbE shared storage, Docker host, AI inference

The ZimaCube 2 sits at the bottom for two reasons. First, physics — it is the heaviest component in the rack, and putting the mass at the base keeps the whole structure stable. Second, thermals — heat rises. The ZimaCube 2 rear exhaust fans already push hot air out the back, but placing it at the bottom ensures its heat output does not pre-warm the components above it.

🎁 The ZimaCube 2 internal thermal separation — CPU/PCIe zoneisolated from the drive bays — means the heat generated by a potential GPU in the PCIe slot does not affect drive temperatures. In a stacked rack configuration, this matters even more than in a standalone setup.
Close-up of 10-inch mini rack layout with Zyxel managed switch, ZimaBlade servers, Proxmox nodes, patch cables, USB ports, and 3D-printed vent panels
ZimaCube 2 installed at the bottom of a 10-inch Kallax homelab rack with Ethernet connection, USB ports, power cable, and large front ventilation grilles

3D-Printed Everything

Every bracket, mount, vent panel, and spacer in this rack was 3D-printed on an Elegoo Centauri Carbon. I designed custom remixes for several pieces to get the ZimaCube 2 and firewall integrated cleanly.

Custom ZimaCube 2 Shelf

The ZimaCube 2 does not have rack ears and does not need them. I designed a U-shaped cradle that cradles the unit by its base with 10mm clearance on all sides for airflow. It slides into standard 10-inch rack rails. No modification to the ZimaCube 2 chassis required.

ZimaBlade Vertical Mounts

Two ZimaBlades mounted vertically on a single 1U bracket, side by side. The vertical orientation saves horizontal space and aligns the rear I/O (Ethernet + power) with the patch panel above for clean cable routing.

3D model of a custom 10-inch rack mount cradle and front panel for ZimaCube 2 with ventilation grilles and cabinet-fit homelab design
Black 10-inch rack panel for ZimaBlade with PCIe x1 2.5G network adapter, Ethernet port, USB port, power connector, and dual drive bay covers

Vents and Blank Panels

Empty space in a rack is an invitation for dust and cable chaos. I printed customizable vent panels to fill every unused slot. The vented design maintains airflow through the stack while keeping the front face clean and dust-resistant.

All STL files and remixes are linked on MakerWorld and Printables. If you are building a similar 10-inch rack, the ZimaCube 2 cradle and ZimaBlade mounts should work for you without modification.

https://makerworld.com/zh/models/1358611-10-inch-rack-for-zimablade-with-pcie-2-5g-ports#profileId-1402800

https://makerworld.com/zh/models/1872040-customizable-vent-blank-panels-for-10-inch-rack#profileId-2082737

Networking: 10GbE Backbone, 2.5GbE Nodes

The network architecture is straightforward but fast:

  • ZimaCube 2 → 10GbE uplink to managed switch
  • 3× Proxmox nodes → 2.5GbE each
  • 2× ZimaBlades → 1GbE each (Coral TPU handles the heavy lifting, not the network)
  • Firewall → 1GbE WAN in, 2.5GbE LAN out

The switch handles inter-VLAN routing for the Proxmox cluster network. The ZimaCube 2 10GbE port means all three Proxmox nodes can pull VM images, ISO files, and backup data simultaneously without saturating the link. A single 1GbE connection would cap at roughly 110 MB/s shared across three nodes; 10GbE gives each node effectively its own dedicated gigabit of bandwidth to storage.

Why the Kallax?

The Ikea Kallax is the unofficial furniture of the homelab community for a reason. Each cube is roughly 335 × 335 × 390 mm — enough depth for a 10-inch rack with cables, enough width for airflow on both sides, and enough height for 6-8U of rack space depending on your mounting solution.

A single Kallax cube can house an entire homelab. The rest of the shelf still holds books, board games, or whatever else you were using it for before you decided to put a server in your living room furniture.

🎁 The end result is a homelab that does not look like a homelab. Guests see a black box in a shelf. They do not see three Proxmox nodes, a 10GbE storage backend, a GPU running local AI, and four security cameras being processed in real time. That is the beauty of the 10-inch format — it hides in plain sight.

What I Would Do Differently

Three things I learned from this build that I would pass on to anyone attempting a similar setup:

  1. Print two of everything. 3D-printed brackets will eventually need replacing, especially in a warm rack. Having spares means no downtime when a mount starts to sag.
  2. Put the heaviest component at the bottom. Seems obvious, but in a 3D-printed rack, weight distribution matters more than in steel. The ZimaCube 2 at the base gave the entire rack better structural integrity than when I had it in the middle.
  3. Leave 1U empty at the top. Hot air needs somewhere to go before it exits the rack. A blank vent panel at the top creates a small exhaust plenum that improves passive cooling through the entire stack.

Build your own 10-inch rack homelab with ZimaCube 2 →

Frequently Asked Questions

Does the ZimaCube 2 actually fit in a 10-inch rack?

Yes — but it depends on your rack design. The ZimaCube 2 is 220mm wide, which matches the internal clearance of a standard 10-inch rack. It will not mount with rack ears natively, but a 3D-printed cradle or shelf mount lets it sit cleanly in the rack. The depth (240mm) fits within a standard Kallax cube with room for rear cables.

Can I rack-mount the ZimaCube 2 without 3D printing?

Yes. A standard 10-inch rack shelf (available from Digitus and other mini-rack vendors) will hold the ZimaCube 2. The ZimaCube 2 does not have built-in rack ears, but a shelf mount requires no modification and provides the same structural support as a custom bracket.

What is the advantage of a 10-inch rack over a 19-inch rack for homelabs?

Three things: physical footprint, noise, and aesthetics. A 10-inch rack fits in furniture (Kallax, desk shelves, media consoles). It forces you to use compact, power-efficient hardware — no old enterprise gear that sounds like a jet engine. And it blends into a living space instead of dominating it.

How do you handle cooling in a stacked 10-inch rack?

Stack the hottest components at the bottom (heat rises). Leave at least 1U of vented space at the top for exhaust. Use vented blank panels instead of solid ones to maintain airflow through the entire stack. And choose hardware designed to run cool — the ZimaCube 2 separated thermal zones help significantly in a stacked configuration.

What other Zima products fit in a 10-inch rack?

The ZimaBlade is ideal — it is small enough to mount two side by side in a single 1U bracket. The ZimaBoard also fits cleanly. If you are building an all-IceWhale 10-inch rack, you could fit a ZimaCube 2 (storage + AI), two ZimaBlades (NVR + lightweight services), and a ZimaBoard (dedicated firewall) in roughly 6U of rack space.

Is 3D-printed hardware reliable enough for a 24/7 homelab rack?

Yes, with the right filament and design. Use PETG or ABS — not PLA — for anything in a warm rack environment. PLA softens around 60°C, which a rack interior can approach under sustained load. PETG handles up to 85°C. Print with higher infill (40%+) for load-bearing parts, and always print spares for brackets that support heavy components.

Zima Campaign Hub

More to Read

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.