The Citadel (Homelab) Living Document

Dantooine

This server’s humble beginnings started as an APU machine recycled by a customer in the early 2010’s. It was enough to run a samba share and act as my first NAS.

Current Iteration

CPURyzen 5 5600x
RAM32GB DDR4
SSD (OS)250GB M.2
HDD (RAID)4 x 4TB (8TB)

Naboo

Naboo has lived and died a few times at this point. It’s been a consistent hostname meant for application servers and my “home server”.

Current Iteration

CPURyzen 5 5600x
RAM32GB DDR4
SSD1TB M.2

Holocron

This is my newest addition to the homelab, it’s in reference to the dense storage of knowledge in the Star Wars universe, appropriate for my AI workhorse

Current Iteration

CPURyzen 5 5600x
RAM32GB DDR4
SSD
HDD
1TB M.2
4TB HDD
GPU(s)2 x 3060 (24GB)

Endor

A simple Optiplex 9020, serving as the networked controller for both of my FDM 3D printers. Additionally, it has USB webcams to monitor the printer progress.

CPUi7 4770
RAM8GB DDR3
SSD (OS)250GB SSD

Hoth

Technically, this server was Holocron but it was easier to move the GPUs and M2 to a new motherboard than it was to extract everything from the case. Who knows what this is for

CPURyzen 5 5600x
RAM32GB DDR4
SSD (OS)250GB SSD
GPU2060 (6GB)

Be warned, this expands into a full *flashbang* light image

Infrastructure

LabelExplanation
ProxyThe reverse proxy is hosted on an Oracle instance, it makes use of the generous free-tier.
It has an always running host service that connects to my home via a Wireguard VPN.
nginx Proxy Manager (NPM) uses VPN IP addresses for the reverse proxy targets
WireguardWireguard is the only port open through my home router. It relies on preshared keys and a static configuration
I have the oracle instance configured to only send VPN traffic through the VPN
The remaining traffic exits the typical NAT gateway in the VCN.
Traefik ProxyTraefik is used to provide internal reverse proxy, I can go to service.homedomain.local which routes to Traefik.
This allows me to support dynamic endpoints, load balancers, and internal SSL certs in a central way.
Traefik hooks directly into the docker socket to provide tight integration between the two.
DHCP/DNSThis device manages the LAN DHCP along with associating those leases with DNS entries.
The authoritative DNS is Pi-Hole, the DNS flow checks router -> pihole -> internet (unless internal domain)

Services

LabelExplanation
AI StackThis is one of the newer stacks provided in the homelab. It currently is used for a sandbox learning opportunity for myself and a few close friends. It’s able to sustain native communication both textually and verbally. It’s able to generate images via a node-based tool called ComfyUI and uses AllTalk to handle TTS features
Pirate StackThe reason the homelab started 20 years ago. I wasn’t able to afford cable and there weren’t any paywall streaming services yet. This has evolved to contain digital rips of physical media and hard to find show archive that is unavailable via streaming services.
This stack has taught me many things that are used in my every day computering.
Object Store
Printers