Starting a Homelab

Homelabbing can be an overwhelming hobby to get started in. Browse places like r/homelab and you will quickly find an abundance of large racks storing rows of computers and networking hardware, along with the odd smaller lab peppered in between. But the great thing about homelabbing is it can be as big, or more importantly, as small as you want.

In this post we’ll explore a range of options to get started, along with a variety of use cases, so lets dig in!

Why start a homelab?

People get into homelabbing for a wide variety of reasons, but generally speaking, there are two common reasons:

  • Somewhere to learn a technology for work or education. For example, this could be buying a Cisco switch from eBay to study for a networking certification, or spinning up an Apache server to understand how a website’s hosted.
  • To self host applications, reducing reliance on the cloud or big tech. For example, you could replace Dropbox with Nextcloud to store and sync your documents, or fire up PiHole to block ads from devices on your network.

I generally fall into the latter, opting to self host a suite of applications, maintaining control over my data. However, I also use my homelab as a place to learn. It’s convenient having an environment to quickly spin up a docker image and test some code I’m working on. Heck, I’ve even hosted a small Minecraft server to play with friends.

Hardware

Like any new hobby, it’s probably best not to break the bank on equipment to get started. Until you have a better idea of your use cases and requirements, start small and grow.

My homelab began years ago, before I even heard the term “homelab” with a Synology DS216J, a 2-bay NAS (Network Attached Storage). This served as a place for me to store my files and backup my laptop. It evolved over time through different forms into what I have today.

Let’s run through a number of options, along with their approximate price range, and use cases:

  • Old (or spare) computer
  • Raspberry Pi
  • NAS
  • Second hand PC

Old (or spare) Computer

You may have an old laptop or PC kicking about just waiting to be repurposed. This is the perfect candidate for starting a homelab as it’s free, so if you decide homelabbing is not for you, no problem!

If you use an old laptop, you have the bonus of the built in battery acting as a UPS (uninterruptible power supply), although depending on age, you may want to consider replacing it before it becomes a “spicy pillow”.

Depending on the hardware, this option provides you with a space to run a multitude of options such as:

  • Docker server for self hosting and running applications.
  • Hypervisor for running Virtual Machines. Some options include Proxmox, XCP-ng or even normal OS like Windows or Ubuntu.
  • Building a NAS using tools like Open Media Vault, TrueNAS, or our favourite here Unraid.
  • Building your own router with software like pfSense or OPNsense.

Using an old computer can have some downsides however. If it’s an older computer, it’s likely to be less efficient. spiking your energy bill if left running 24/7. It may also have limited resources like RAM, or storage capacity, but these are likely upgradable.

Raspberry Pi

The Raspberry Pi is a great low cost option for starting a homelab. It’s a small, but capable, machine with a large community, and plethora of accessories. Starting around $15 for the Pi Zero and $35 for the Pi 4, the latter being our recommendation due to its higher specs and port selection, making it a much more capable device. With that said, the Pi Zero is perfect for tinkering with electronics or running small services like PiHole

Although the Pi is small, its popularity has contributed to a wide spectrum of use cases, providing you limit your expectations:

  • Run smaller services like Apache web server, PiHole, and Docker.
  • Build a portable NAS using external drives and Open Media Vault. You can even buy a fancy NAS enclosure for the Pi!
  • Build a smart home with Home Assistant. With various accessories you can use it to make dumb things smart, or control already smart devices in your home, such as bulbs, cameras and TVs.
  • Learn to code with a dedicated device and stacks of resources created specifically for the Pi.

While you can run services like Nextcloud or Jellyfin media server, the hardware will limit its performance. In addition this limits the potential to scale and host more services on a single device.

You also shouldn’t rely on the Pi to store your only copy of data, backups are important!

NAS (Network Attached Storage)

A NAS is a great starting point if you are looking to store or backup data on your network. They are generally user friendly, with intuitive web based management portals and many brands include a suite of tools for backing up your computer, running Google Docs clones and even running some Docker containers.

However, they usually come with a price premium. A low end enclosure may start at $250 but by the time you add some drives, you’re quickly around or above $500. You’ll also run into quirks and issues when trying to run more complicated Docker containers, or installing third party software.

When it comes to brands, we havve only used Synology at The Homelabber, however Jeff Geerling, a well respected homelabber and author, is quite the fan of Asustor. QNAP is another large brand you’re likely to come across, however we urge caution given their repeated history of vulnerabilities and slow response to fixing them.

As mentioned, you are generally going to be more limited when running services on a NAS, the following are common use cases:

  • Network storage, accessible to computers and devices on your network.
  • Media server for streaming digital copies of your TV shows and films.
  • Running some simple docker containers like PiHole (although these may require more configuration than on a standard linux host).
  • Backing up your PCs and Mac (depending on the tools offered by the brand of NAS.)

Second Hand PC

This is similar to the “Old Computer”, but with much more choice. Generally speaking, you want to look for a fairly modern CPU to support more RAM, lower power usage and features like Intel QuickSync for transcoding media on a media server.

Marketplaces like ebay have sellers reselling ex-corporate machines with varying configurations. You will want to focus on finding something with a good CPU and upgrade it with your own RAM and storage as resellers often fill them with cheap components and overcharge for upgrades.

If you are after a small computer to play with Linux, host some docker containers, and even a VM or two. Small form factor (SFF) PCs like the Dell Optiplex, or the Lenovo ThinkCentre M ranges are perfect. They are low power, small, regularly available, and come in a variety of configurations.

As for larger computers with more expandability, workstations can be a good option. They offer more space for PCI Express expandability for peripherals like network cards or graphics cards, and more storage bays. Some even still feature an optical disc drive too if you want to backup your DVD collection.

Generally speaking, this option provides the most flexibility. With prices starting as low as $50 and going as high as you’re willing to spend, you can really find something that will fit your needs.

In addition you have the flexibility of most operating systems, from Unraid, to Proxmox, or even Arch Linux (*tips hat*).

A quick word on Security

It’s tempting to expose your new homelab to the internet, perhaps you’re self hosting a blog, or want to invite your friends to play on your game server. But unless you understand the risks and how to mitigate them, you really shouldn’t. Even if the application or service has password protection in front of it, there may be exploits that can be taken advantage of. When you expose a device or network to the web, you are opening yourself up to all sorts of potential malicious threats.

You’ll want to think about firewalls, monitoring, logging and much more. You could even use technologies like VPNs and tunnelling to help reduce the risk.

So make sure you take the time to fully understand the risk and the necessary steps to reduce this before exposing yourself to the world wide web.

Conclusion

Homelabbing doesn’t have to be about big expensive gear or creating your own data centre. It really can be as big or small as you need. We have covered a number of options in this post, along with possible projects to try, but there is much more out there! I encourage you to use this as a stepping stone into your homelab journey and start exploring!

Happy homelabbing.