Part 3 — Docker, Homeservers, and the Slow Descent Into Infrastructure

Every self-hosting journey begins with optimism.

And eventually arrives at:

“Why is localhost refusing to localhost?”

For me, the infrastructure side began innocently enough.

A Raspberry Pi 5.
An NVMe SSD.
Docker.
Portainer.
A few containers.

Nothing dramatic.

The original idea was simply to centralize media and services:

  • Jellyfin for movies and TV

  • Immich for photos

  • Nextcloud for files

  • Navidrome originally for music

  • eventually Needle backend and web player

At first, the homeserver felt like a side project.

But the moment multiple services start interacting, infrastructure becomes a system rather than a collection of apps.

And systems introduce entirely new categories of problems.

For example:

  • Docker networking

  • volume permissions

  • storage layouts

  • backup strategies

  • reverse proxies

  • internal vs external access

  • DNS

  • SSL certificates

  • service discovery

None of these problems appear when building a standalone desktop app.

But suddenly they become unavoidable.

One particularly educational moment involved Duplicati backups.

At some point I realized that years of carefully curated metadata, cleaned ID3 tags, album artwork, BPM analysis, and vinyl rips represented actual value.

Not financial value.
Personal value.

And personal value changes how you think about backups.

That realization led to:

  • external storage planning

  • off-site backup considerations

  • Docker volume mapping tricks

  • and several evenings spent staring at Linux mount permissions with existential fatigue.

Infrastructure has a unique way of humbling developers.

No matter how many applications you build, eventually Linux calmly informs you:

“Permission denied.”

And suddenly your entire evening belongs to the filesystem.

But slowly, something interesting began happening.

The infrastructure stopped feeling frightening.

Instead, it started feeling empowering.

That is the dangerous threshold.

Because once infrastructure starts feeling empowering, thoughts like these begin appearing:

“Maybe I should own my DNS.”

Which, naturally, is how the next chapter began.