The lab
Everything on this site that says “self-hosted” runs on one machine in my house: a GPU server I specced, built, and administer myself. The whole stack is mine, from database schema down to the hardware it sleeps on.
The machine
| cpu | AMD Ryzen 9 9900X, 12 cores |
| gpu | RTX 5090, 32GB VRAM |
| ram | 64GB DDR5-6000 |
| disk | NVMe for OS and models, 2×16TB in RAID 1 for media |
| net | 10Gb NIC, mesh VPN for access from anywhere |
| os | Ubuntu, everything in Docker |
What runs on it
- Local LLM inference through Ollama. Ollama Manager, a UI I built, loads models in and out of VRAM and watches GPU telemetry.
- Image generation and LoRA training: ComfyUI tuned for the Blackwell architecture, plus a training pipeline for fine-tuned models.
- Media stack: automated acquisition, library management, streaming.
- The applications on this site’s work index, each in its own container.
- Homepage, the dashboard watching all of it: 15 service adapters polling over the Docker socket. Prometheus, Grafana, and Uptime Kuma underneath. External healthchecks on the production endpoints.
Why it matters
Running production for yourself changes how you build for other people. When the disk fills, the GPU overheats, or a container dies at midnight, there is no platform team to file a ticket with. You learn to monitor before things break, to write healthchecks that tell the truth, and to make peace with the fact that an unmaintained system is a failing one.