I Rewrote My Media Server in Kubernetes and Only Cried Twice

What We’re Building This post walks through deploying a full home media server on k3s. The stack includes Jellyfin for media streaming, the arr ecosystem (Sonarr, Radarr, Prowlarr) for automation, all served over HTTPS via a Let’s Encrypt wildcard certificate using Cloudflare DNS. Media files are stored on an SMB share set up in my previous plex post. Here’s how the pieces connect: flowchart LR subgraph HomeLAN A[Browser] -->|HTTPS 443| T[Traefik] T -->|HTTP 8096| J[Jellyfin Pod] T -->|HTTP 8989| S[Sonarr Pod] T -->|HTTP 7878| R[Radarr Pod] T -->|HTTP 9696| P[Prowlarr Pod] J & S & R & P ---- PVC PVC ---|SMB CSI| NAS[(SMB Share //nas/media)] end TL;DR: k3s > Docker ...

Docker Just Isn't Cutting It

The time has come! That’s right. I’ve crossed over. Docker just isn’t doing it for me anymore. The limitations, the lack of flexibility, the industry drift it’s all driven me to the dark side. It’s Kubernetes time, baby. I’ve always wanted to learn Kubernetes. People act like it’s dark magic, but like all complicated things a bit of effort goes a long way. After diving into the rabbit hole, I’d say it’s pretty straightforward if you’re already comfy with containers. It’s just Docker Compose with extra bells, knobs, and the ability to do kickflips. Nothing you can’t learn. ...