Homelab

Homelab

I try to self-host nearly all the software and services I regularly use. This includes web servers, CI/CD, CalDav endpoints, game streams, matrix chat rooms / bridges, MacOS VMs, and much more.

This frees me from any one vendor’s control. Not only do I decide what to run, but self-hosting diminishes the impact of lock-ins, privacy breaches, and rising cloud hosting costs.

It’s an incredible learning tool as well. It’s often difficult to orchestrate your self-hosted cloud, but by trudging through errors, minimalizing downtime, and managing complexity you learn to operate a machine that’s entirely your own.

Must evolve.

Abathur, Starcraft II

Content

System Hardware

  • Ryzen 3700x (8 core, 16 thread processor)
  • 128 GB of 3200MHz DDR4
  • Nvidia RTX 2080
  • x6 WD Easystore 10TB HDDs, shucked
  • NVME/SATA SSDs adding up to 2TB, for container and VM disks

This retired gaming PC now runs Proxmox, mainly because of its price tag but also for its reputation as an excellent virtualization host. I could not recommend it more for your homelab especially after a few tweaks:

Services

The following is a list of software I run on my homelab, in order of joy-sparking:

Infrastructure

  • Caddy Server
    • I reverse proxy my external services once behind my EdgeRouter X
  • Nomad a simpler alternative to Kubernetes.
    • Orchestrates my ephemeral projects, like this website you’re reading.
  • Matrix Synapse used for
    • iMessage bridge
    • Google Voice bridge (technically from IMAP)
    • Server notifications with matrix.sh
    • Some discord-like chat rooms
    • Another avenue to contact me (@qcasey:matrix.quinncasey.com)
  • Home Assistant for IoT device control
  • GitTea as my own git instance
  • Drone CI running CI/CD of my projects
  • Pi Hole DNS-wide adblocking
  • WireGuard as a personal VPN
  • AnonAddy for disposable email addresses
  • Octoprint running my 3D printer

Personal Cloud

MacOS Catalina OpenCore VM

Put together using this great guide by Nicholas Sherlock. It runs MacOS specific tools I need regularly:

  • Mautrix imessage matrix bridge, gives me iMessage on Android
  • AirPhoto, my hacky Go program for iCloud Photo Streams on Android
  • iOS Development Environment, for testing/deploying React Native apps on iOS

Analytics VM

Volumio Music player VM

  • Audio card and a Bluetooth dongle passed through, the server is now a speaker

Windows 10 Gaming

  • Passed through an RTX 2080, allowing me to play games remotely with Moonlight.

I regularly watch these lists for new services to self host: