Software Developer Details HomeLab Hardware Setup Built Around a Commercial NAS
A software developer has published a detailed list of the hardware behind his HomeLab, a home server setup built around a commercial NAS for critical data and second-hand equipment for everything else.
The article appeared on Sept. 13 in the Matrix writing community of the Chinese tech site Sspai. It describes a HomeLab as a home version of a cloud server, used to run services such as personal cloud storage, media servers, development environments and smart-home systems. The author, a software developer, breaks such a setup into four parts: computing power, storage, networking and peripherals. The barrier to entry, he writes, is lower than many assume, since a commercial NAS, a small Docker-capable mini PC or even a laptop is enough to start.
He gives three reasons for building his own, ordered by importance: data, privacy and the tinkering itself. An early experience with Qiniu Cloud OSS convinced him to keep important data on his own servers, he says. After he forgot to renew a subscription, images on his blog became inaccessible with no chance of recovery. Photographs of his family and records of his son's growth, he writes, should not be held by a third party.
His guiding principle is KISS, or Keep It Simple, Stupid. To avoid spending too much personal time, he chooses simple, easy-to-use solutions and avoids complex configurations. Important data goes on a commercial NAS with redundancy and cold backups, while less critical services run in Docker on cheaper machines bought from the second-hand marketplace Xianyu. He says he does not use Kubernetes because the number and quality of his services do not yet justify it, and that support for virtualization became a hard requirement when choosing devices.
When selecting hardware, he ranks four criteria: stability first, then cost-effectiveness, expandability and compatibility. He deliberately avoids an all-in-one machine, which he calls All in Boom, arguing that such products sacrifice performance and room for upgrades. Instead he spreads services across several independent machines so that a failure in one does not affect the others.
Hardware and time are the biggest costs, he writes, with software essentially free. The commercial NAS and its drives are the only part he does not try to economize on. His server and graphics cards are mostly second-hand, including a 2080Ti bought on Xianyu for 1,800 yuan and a Tesla P40. Switches and software routers were also bought second-hand. He waited for a compatible network card for his DS923+ rather than buying the official one, which he says costs about one-fifth of the machine's price; the compatible card was just over 400 yuan. A cloud server at 99 yuan a year, purchased for two years, hosts his blog and acts as a relay for remote networking.
Buying early can be expensive, he notes. The first 32GB memory stick for his Mac mini 2018 cost nearly 3,000 yuan, while a second bought three months later cost just over 1,000. The hidden costs of second-hand gear, he adds, are time and luck. Electricity is another expense: about 80 percent of the equipment in his study is running at any given time, which he says often makes him dream of his wife pulling the plug after paying the bill.
The article lists his main machines. They include a 16-inch MacBook Pro with an M1 Pro Max, 64GB of memory and 4TB of storage as his primary computer; a 2018 Mac mini with an i7, 64GB of memory and a 10-gigabit Ethernet port, now used as a download and server machine; a 2023 Mac mini with an M2, 16GB of memory and a 10-gigabit port, serving as a cache server and a test machine for small models; and a ThinkStation M920x Tiny with an i7-8700, 64GB of memory, 4.5TB of storage and dual 10-gigabit optical ports, which runs Ubuntu Server and hosts most of his Docker containers and virtual machines.
He says the M920x runs more than 40 services in Docker and four virtual machines, with a WAF acting as the second-layer entry point for all external traffic and able to cut connections quickly when problems arise. After finding the small machine cheap and capable, he bought two more and, together with an NUC, built a 40-gigabit internal network used mainly for Ceph. A separate desktop with dual E5-2680 v4 processors, 256GB of memory, a 2080Ti and a Tesla P40 handles graphics-heavy work.
Approaches to HomeLab vary, he writes, and what suits a person's current situation matters most. Those who do not want to tinker can buy a commercial server, while those willing to tinker can get better value by assembling second-hand parts. His own approach is a compromise: keep the most important data on a commercial NAS with redundancy and cold backups, and let everything else be experimental.