Media Server Starter Kit: The Smallest Build That Actually Works
The smallest media server build that actually works. Two paths — use a computer you already have, or set up a dedicated mini PC — so you can stop as soon as you’ve got something running.
Get the rest of the guide
Enter your email and we'll send you the full guide plus a heads-up when new Resilient Tomorrow tools drop.
No spam. Unsubscribe anytime.
You're in — the full guide is unlocked below.
Media Server Starter Kit: The Smallest Build That Actually Works
You read why streaming isn't ownership. This is the how — and there's more than one way in. Pick the path that fits how comfortable you are, skip the parts that don't apply to you, and stop the moment you've got something that works.
How to Use This Guide
Most "build a media server" guides assume you're ready to install Linux and live in a terminal. That scares off the people who'd benefit most. So this one branches.
There's exactly one real decision up front — which computer runs the software — and two honest answers. Pick one. Everything after that is shared between both paths, and the harder steps are clearly marked optional, so you can stop as soon as you have something working and come back later if you want more.
You are not meant to read this start to finish. You're meant to move in and out of it.
The One Decision: Which Computer Runs It?
A media server is just one piece of software — Jellyfin — running on a computer that stays on. The only real question is which computer.
Path A — A computer you already have. Easiest. Start here if you're unsure.
Install Jellyfin on your existing Windows PC or Mac. It's a normal double-click installer: no new operating system, no USB sticks, no command line. You can be watching within the hour. The trade-off: your library is only reachable while that computer is awake and on.
Path B — A dedicated mini PC. More setup, better long-term.
A small, silent, ~$150 box that runs all the time on barely any electricity, so your library is always available without tying up your main computer. This path involves installing an operating system (Ubuntu) and touching the command line. More work, but a one-time effort — this is where real "set it and forget it" lives.
Not sure? Start with Path A. Prove to yourself it's useful first. If you decide you want it always-on, move to Path B later and your media files just copy across. Nothing you do in Path A is wasted.
In Plain Terms: What You're Actually Installing
- Jellyfin is the software that turns a computer into the media server. It catalogs everything on your drive — movies, shows, music, photos — pulls in cover art and descriptions automatically, and streams it to an app on your TV, phone, or laptop. Think of it as your own private Netflix, except the library is whatever you put on the drive, and nobody can remove a title but you. Free and open-source. Learn more at jellyfin.org. (Needed in both paths.)
- Ubuntu is an operating system — the Linux equivalent of Windows or macOS, stripped down to run quietly in the background. You install it once and mostly forget it's there. Learn more at ubuntu.com/server. (Only if you choose Path B.)
- Tailscale lets you reach your server from outside the house — a hotel, a friend's place, your phone on a train — by building a small private, encrypted network between your own devices, with no router settings to change. Free for personal use. Learn more at tailscale.com. (Optional, both paths.)
What You'll Need
Both paths:
- An external hard drive for your media — an 8–14TB USB drive (~$100–200) is the sweet spot, but any drive you already own works to start.
- A device to watch on — a smart TV, phone, tablet, or just a web browser. The Jellyfin app is free on all of them.
Path A adds: nothing. You use the Windows PC or Mac you already own.
Path B adds:
| Component | What to Buy | Why | Approx. Cost |
|---|---|---|---|
| Mini PC | MINISFORUM UN100P or GMKtec Nucbox G3 Plus (Intel N100/N150) | Low power (6–10W), silent, handles 4K, hides behind a TV | ~$150–180 |
| USB stick | Any 8GB+ stick you don't mind erasing | Used once, to install Ubuntu | ~$8 (or one you have) |
| Ethernet cable | Cat 6, any brand | Wired beats WiFi for streaming reliability | ~$10 |
Path A — Run It on a Computer You Already Have
The terminal-free version. If you can install an app, you can do this.
A1. Install Jellyfin (15 minutes)
- Go to jellyfin.org/downloads and download the installer for your system — Windows or macOS.
- Run it like any other app and follow the prompts.
- When it finishes, Jellyfin opens in your web browser at a local address it shows you (something like
http://localhost:8096). Create a username and password when asked.
That's the server installed. No command line, anywhere.
A2. Then: add your media and watch
Continue to Add Your Media and Watch It below — those steps are the same for everyone.
The one catch to remember: the server only works while this computer is on and awake. That's fine for evening viewing. If you want it available around the clock without leaving your main computer running, that's exactly what Path B is for.
You can stop here. You have a working media server.
Path B — Run It on a Dedicated Mini PC
More involved, and worth it if you want always-on. Budget an afternoon.
New to the command line? Don't skip — delegate. Every command in this path can be pasted into an AI assistant (ChatGPT, Claude) along with: "I'm following a guide to set up a Jellyfin media server on Ubuntu. Explain what this command does before I run it, and help me if it throws an error." That turns the most intimidating part of this into a conversation. (A full guide to doing this well is coming in the RT toolkit — How to Prompt an AI to Get What You Want.)
B1. Put Ubuntu on a USB stick (20 minutes)
"Flashing" sounds technical but only means writing the Ubuntu installer onto a USB stick, so the mini PC can start up from it. You need two things: the Ubuntu file, and a free tool to write it.
- Download Ubuntu Server 24.04 LTS from ubuntu.com/download/server. You'll get one large file ending in
.iso. - Download a flashing tool — any one of these, all free:
- balenaEtcher (Windows, Mac, Linux) — simplest, recommended if you've never done this. From etcher.balena.io.
- Rufus (Windows only) — from rufus.ie.
- Raspberry Pi Imager (all platforms) — also handles plain USB drives.
- Open the tool, point it at the Ubuntu
.iso, point it at your USB stick, and click Flash (or Write). It erases the stick and writes the installer. A few minutes.
B2. Install Ubuntu on the mini PC (30 minutes)
- Plug the flashed USB stick, a monitor, and a keyboard into the mini PC. Power it on.
- It should boot into the Ubuntu installer. If it boots to something else, you usually pick the USB from a boot menu — tap F12 or F2 right at startup. (Your mini PC's key may differ; an AI assistant can tell you which, if you give it the model.)
- Follow the prompts and accept the defaults unless you have a reason not to.
- When asked, turn on "Install OpenSSH server." This lets you control the mini PC from your main computer later, so you can unplug the monitor and keyboard once it's running.
- When it finishes, remove the USB stick and reboot.
B3. Install Jellyfin (20 minutes)
Jellyfin is the media server software — the thing that catalogs your files and streams them. Docs: jellyfin.org.
# In the terminal on the mini PC, or over SSH from your main computer
curl -fsSL https://repo.jellyfin.org/install-debuntu.sh | sudo bash
sudo systemctl enable jellyfin
sudo systemctl start jellyfin
Jellyfin is now running at http://[your-mini-pc-ip]:8096. Find the IP in your router's admin panel (or run ip a on the mini PC). Open that address in a browser and create your username and password.
B4. Then: add your media and watch
Continue to Add Your Media and Watch It below.
You can stop after this. Remote access (Tailscale) is optional and lives in its own section further down.
Add Your Media (both paths)
- Copy your movies, TV, and music onto the drive, sorted into folders:
Movies,TV,Music. Tidy folders make Jellyfin's automatic cover art and descriptions work far better. - In Jellyfin's web page: Dashboard → Libraries → Add Library.
- Choose the content type (Movies, Shows, Music), then point it at the matching folder on your drive.
- Let Jellyfin scan. It fetches posters and details on its own. Grab a coffee.
Watch It (both paths)
Install the free Jellyfin app wherever you want to watch:
- Smart TV / streaming stick — search "Jellyfin" in your TV's app store (works on most, including Fire TV, Android TV, Roku, and others).
- Phone or tablet — Jellyfin app on iOS or Android.
- Computer — just open the server's web address in any browser.
Sign in with the username and password you created. Your library shows up. Press play.
Done. You own a working media server.
Optional: Watch From Anywhere (Tailscale)
Skip this entirely if you only watch at home. You can add it any time later.
Out of the box, your server works on your home network. Tailscale extends that to anywhere — your phone on a trip, a friend's house — without exposing anything to the open internet.
- Path A (Windows/Mac): install the Tailscale app from tailscale.com on the computer running Jellyfin, sign in, and install it on the devices you want to watch from. They find each other automatically.
- Path B (mini PC):
Follow the link to authenticate. Install the Tailscale app on your phone or laptop, sign in with the same account, and your mini PC is reachable by a stable name from anywhere.curl -fsSL https://tailscale.com/install.sh | sh sudo tailscale up
Either way: your devices behave as if they're on your home WiFi, no matter where they actually are.
When Something Goes Wrong
"Playback error" on the TV. Usually the TV is asking for a video format the computer can't convert fast enough. In Jellyfin: Dashboard → Playback → Transcoding, and if you're on a mini PC with an Intel chip, turn on Intel Quick Sync. Still stuck? Set the Jellyfin app on the TV to a lower bitrate (8 Mbps is usually plenty).
Can't find the server on your TV. Make sure the TV and the server are on the same home network, and that the server computer is awake. On the app's login screen you can also type the server's address (http://[its-ip]:8096) directly.
Stuck on a command (Path B). Paste it into an AI assistant with the error message and ask it to explain and fix. Genuinely the fastest way through.
What You Don't Get (Yet)
This kit is intentionally minimal. It does not include automated downloading (Radarr/Sonarr), VPN tunneling (Gluetun), subtitle automation (Bazarr), a request portal (Jellyseerr), or multi-drive pooling (mergerfs).
Those are all real, and they're what Apollo adds — but they're Phase 2. This is Phase 1: get it running, prove it's useful, build the habit. Once you're using it daily, the advanced stack stops looking overwhelming and starts looking obvious.
The Next Rung
Once this works, you have three honest options:
- Keep it simple. Add more drives, back up to a second location, call it done. Completely valid.
- Grow the stack. Add automation, privacy tunneling, and remote requests — the full build.
- Share it. Hand a family member Tailscale access. You've just built a small commons.
If you want option 2, that's Apollo — my full automated build: request → download → organize → watch, with zero manual file handling. The complete walkthrough is the Apollo Build Guide, available to paid subscribers.
What makes that one worth a paid subscription isn't the parts list — it's the part nobody else publishes: every wall I hit building it on real hardware and exactly what got me past each one, plus the ability to ask me directly when you're stuck. The free guide you just read gets you a working server. The paid one gets you mine, troubleshooting and all.
This guide is the free entry point to the Resilient Tomorrow off-ramp series. For the full Apollo build and weekly strategies on food, energy, media, and the systems that actually matter, subscribe at resilient-tomorrow.com.