My First Homelab Setup (2020)
What hardware do you need to start a homelab? There is not a single, simple answer to this question. In any case, whatever you decide to use initially, you will undoubtedly change your mind further down the line. So, where is a good place to start?
When I built my first Homelab, back in 2020, I started with a 10+ year old HP Compaq Elite 8000 that I bought off eBay for £30 (including postage). It had no OS, only 4GB of memory, a two core processor and 256GB mechanical hard drive. But, other than the odd scratch and the odd fluff of dust, it was in full working condition.
I set about upgrading the PC with:
- a replacement 4-core processor (£11, eBay)
- 2x2G memory (£8, eBay)
- a 4-port ethernet card (£11, eBay)
- 128GB SSD drive (£20, Amazon)
- 2TB hard drive (£60, Amazon)
So , for a grand total of £140 I had the basic hardware in place for a homelab server.
After enabling VM support in the PC BIOS, I then set about installing Proxmox. Proxmox is a hypervisor, which allows you to install multiple virtual machines (VMs) or containers (CTs) on the PC. In fact, with Proxmox, it is possible to install containers that have been pre-installed and configured for many different linux distributions, such as Debian, Ubuntu and Alpine, as well as many of the major server applications, including file servers, web servers, media servers, etc.
I first uploaded and installed the open source pfSense software within a VM, to act as my network router and firewall. I then added 4 containers:
- Ubuntu Server 20.04
- Turnkey Linux (Debian-based) Mediaserver (Jellyfin)
- Turnkey Linux (Debian-based) Nextcloud
- Turnkey Linux (Debian-based) Wordpress (running this website!)
The Ubuntu Server is dedicated to running docker containers. At the moment I run 4 docker containers:
- Portainer ( a graphical interface for docker)
- Cloudflare (linking the DDNS of my home to my custom website domain)
- DuckDNS (linking my DDNS to my free DuckDNS domain)
- Nginx Proxy Manager (to provide the appropriate forwarding)