Overview
A personal homelab built to run and maintain several public web services from a homeserver behind CGNAT.
Architecture
A Hetzner VPS acts as the public entry point and forwards traffic through a WireGuard tunnel to the homeserver. Nginx on the homeserver handles per-domain routing and TLS termination before forwarding requests to Docker Compose services.
Infrastructure
- Ubuntu-based homeserver and Hetzner VPS
- WireGuard tunnel connecting the private homeserver to the public VPS
- Nginx stream proxy, reverse proxy, and TLS termination
- Let's Encrypt certificates managed with Certbot
- Docker Compose services hosted on the homeserver
What It Supports
The homelab hosts multiple public web applications and services, including a personal portfolio, study tools, a self-hosted book, and a CS2 statistics application.
The project provides practical experience in networking, service deployment, observability, reliability, and maintaining infrastructure behind residential network constraints.