Personal Homelab


1.7.26

OptiPlex additional hardware

Coming home for winter break allowed me to work on my homelab more. Not only did I have more free time to tinkers and mess around with it, but I also couldn't virtually access my homelab from school. However, this would soon change.

I decided to set up a solution to the problem I had and that was not being able to access my homelab's applications from outside my network. So, I taught myself how to set up a virtual private network (VPN) tunnel. Since I already had a pfSense firewall/router combo, I set up a VPN tunnel so that I could access my homelab from anywhere around the world. Just as long as I was connected to the internet.

Proxmox server setup

After setting up the VPN, I wanted to start a Proxmox server for myself. This is because for the holidays, I received parts for me to build myself a PC and no longer had a use for the laptop I was currently using.

I loaded the Proxmox ISO onto a USB drive and installed it on my old gaming laptop. From there, I configured the server and could access it remotely via its GUI. From there, I have a few virtual machines running on the server. I converted one of the servers into a Minecraft server so that I could have that up and running again. I have uses for the other servers but will slowly be working on them.

OptiPlex additional hardware

Additionally, I went to a hardware surplus store and scored myself a Dell OptiPlex for a good price. I only had to supply my own SSD and it was up and running!

I swapped out the old TrueNAS server and replaced it with the OptiPlex. Getting it set up was straightforward since I went through all the steps previously. The only difference was that I had an additional hard drive to set up for storage.

This additional hard drive allowed me to start using my applications. For example I taught myself how to set up a ZFS pool so I can add media to the drive while also connecting the drive to my Jellyfin server. This allowed me to start streaming the media I owned to my devices.

Adding this extra machine to my network required me to upgrade my network switch to accommodate the additional device. I invested in a layer 3 switch to improve network performance. This also allows me in the future to set up VLANs and isolate my network traffic for security purposes. However, I will learn that in the upcoming future.


8.16.25

Homelab router and switch installation

Shout out to:

If it weren't for these creators, I wouldn't have been able to build my homelab.

I took about a week doing research on what I could do to upgrade my already growing homelab. I discovered these YouTube channels and found inspiration through all of them.

I first went out and bought more ethernet cables for my network switch to add more ports for my devices. I also had a Raspberry Pi 5 laying around and learned from Louis Rossmann's FUTO guide that I could set it up to run Pi-hole, a network-wide ad blocker.

The Lenovo Mini PC continued running a Minecraft Paper server. I want to get mods running on it but need to learn how to get them working on a small device like the Mini PC.

Taking inspiration from HardwareHaven, I bought an HP Mini PC on eBay, upgraded the RAM to 8GB, made it a Ubuntu server, and installed Docker Compose. Some containers I set up to start:

Lastly, I found a stand for my Lenovo Mini PC to keep it upright. Everything fit perfectly on top of the TrueNAS server. Things are going great!


8.7.25

Tinkering with computer hardware

I taught myself how to image a new operating system onto a computer to repurpose it for my homelab. I discovered Network Attached Storage (NAS) and how it can be used to store and share files across a network. I took the 500GB hard drive from the Lenovo Mini PC and taught myself how to set it up through TrueNAS.

I successfully hooked TrueNAS up to the salvaged laptop and connected to the GUI from my network. Here I learned how to create storage disks, datasets, pools, shares, and most importantly, data protection. TrueNAS made sharing storage much easier — not only via SMB but also via NFS.

However, I ran into a problem: I couldn't close the laptop lid or the computer would shut down, or the screen text would burn into the display. So I taught myself how to pop open the hood and disconnect the screen power from the motherboard.

Popping open the hood

Popping open the hood helped me understand how the inside of a laptop is laid out. I learned the laptop had an M.2 drive for extra storage, and that laptop CPUs are usually soldered to the motherboard. Disconnecting the display saved the screen from burn-in and also conserved energy.

Operating while hood is closed

This allowed my first complete server to stay on with the screen off. Now I could access it from my personal laptop via SSH or the TrueNAS GUI.


8.6.25

Early homelab setup

The start of my homelab journey.

I decided to start a homelab after I was gifted a Lenovo Mini PC. At first I just wanted to run a Minecraft server for my college friends, but this quickly introduced me to the world of self-hosting.

In the image: a wired keyboard and mouse, the Lenovo Mini PC, a small layer 2 network switch, a Raspberry Pi 5, and a 500GB hard drive salvaged from another laptop. I taught myself how to upgrade the Lenovo from Windows 10 to Windows 11 by bypassing the CPU requirements via command prompt. I also set up the hard drive as a shared network drive using SMB and got Raspberry Pi OS running on the Pi.

I quickly got hooked on self-hosting and started exploring different services and hardware options at various price points.


Hardware · As of 1.7.26

Server Hardware

  • 32GB RAM for running multiple VMs
  • 1TB NVMe SSD for fast storage
  • Multiple HDDs for data storage

Virtualization

  • Proxmox VE hypervisor
  • Multiple virtual machines
  • Network isolation and VLANs

Services & Applications · As of 1.7.26

Productivity

  • Nextcloud for file syncing

Networking & Security

  • Pi-hole for network-wide ad blocking
  • pfSense firewall and routing
  • VPN server for secure remote access

I also run a Minecraft server for friends and a Jellyfin server for my owned media.