← Back to projects

Personal Homelab Infrastructure

A Proxmox-based self-hosting environment with isolated containers, a Docker VM, reverse proxying, firewall rules, and tiered storage.

ProxmoxDebianCaddyDockerZFSFirewallSelf-hosting

Network route

Public traffic enters through the reverse proxy. Internal services stay behind the Proxmox firewall and are only reachable where explicitly allowed.

Public entry

Domain

Public HTTPS requests arrive through the configured domain.

Reverse proxy CT

Caddy

Routes selected domains to internal services.

Application host

Docker VM

Runs containerized application workloads.

Infrastructure layout

The setup separates services, application workloads, storage tiers and network access.

Compute

4 CTs · 1 VM

Dedicated containers for core services and one VM for Docker-based workloads.

Storage

SSD + ZFS mirror

SSDs for fast-access data and mirrored HDDs for long-term persistent storage.

Security

Firewall isolated

Proxmox firewall rules restrict communication between systems.

Overview

My homelab runs on Proxmox and is used for self-hosting, experimentation, storage, documentation, and project deployment.

The setup is split into dedicated containers and one Docker VM instead of running all services on a single host.

System layout

The environment consists of four containers and one virtual machine.

The containers are used for dedicated services, while the VM runs Docker-based application workloads. The reverse proxy is separated from the application host, so public routing and application hosting are not coupled together.

Storage

The server uses four drives:

  • 2 SSDs for the main system, applications, and fast-access data
  • 2 HDDs in a ZFS mirror for long-term persistent data

This separates fast application workloads from larger long-term storage.

Network and firewalling

All systems use the Proxmox firewall.

Communication between systems is restricted to the connections that are actually needed. Public access goes through the reverse proxy, while internal services remain isolated behind firewall rules.

What this project covers

  • Proxmox administration
  • CT and VM separation
  • Reverse proxying with Caddy
  • Docker-based application hosting
  • ZFS mirror storage planning
  • Firewall-based service isolation