Skip to content

eggnet

A small, silent mini PC quietly running a private cloud — media, photos, docs, DNS, auth, the lot. On one all-flash box, or a compute node paired with a dedicated storage node. Here's what it runs, why it's built this way, and how you can build your own.

Media & photos

A full media library and a private photo cloud for the family — streaming and phone backup. Your own Netflix + Google Photos, on hardware you own.

Docs & tools

A searchable document archive, bookmarks, notes, a résumé builder, budgeting — a shelf of small self-hosted apps, each behind one login.

Private DNS

Network-wide ad & tracker blocking, split-horizon names so every service gets a real HTTPS address, and per-device rules — served locally.

One login, everywhere

Single sign-on across every app via a self-hosted identity provider. No per-app passwords; groups decide who sees what.

One box, or two

Start all-flash on a single mini PC — near-silent, a few watts. Grow into a lean compute node beside a dedicated storage node when you want cheap bulk and a CPU next to your media. Two shapes, one set of patterns.

Proxmox + ZFS

A hypervisor base with mirrored ZFS storage: containers for isolation, snapshots for safety, and a clean line between hot data and backups.

Reachable anywhere

Private by default over a mesh VPN; selectively public through a tunnel — no ports forwarded, no home IP exposed.

Reproducible

Reverse proxy, DNS, auth, and secrets are all configured as data you can rebuild from. These guides are those patterns, generalized.

Boring, well-worn, open-source tools — wired together carefully. A selection of what’s running:

Logos belong to their respective projects. Screenshots aren’t shown — a public page shouldn’t expose the family’s real photos, library, or dashboards.

Every guide is written to be copied, not admired — the reasoning first, then the pattern, then the gotchas that cost real hours. Start with the overview, or jump to whatever you’re wiring up today.

Fittingly, this very site deploys itself: a git push triggers a GitHub Actions build → an image on GHCR → the homelab’s own container manager pulls and redeploys it. No manual step.