You Can Just Host Things
That old laptop in your drawer can become your own private cloud this weekend. A beginner's guide to self-hosting — what it is, why it's worth it, and a 30-minute Docker how-to.

Somewhere in your house there is probably a laptop in a drawer. Too slow for what you bought it for, too fine to throw away. It is, right now, more computer than most of the internet ran on twenty years ago — and it is doing nothing.
I want to talk you into giving it a job.
Because here's a thing almost nobody tells you until you're already deep in it: you can just host things. The apps you rent every month — the notes app, the photo storage, the read-it-later tool, the password manager, the file sync — a huge number of them are things you can run yourself, on hardware you already own, for free. Not a worse knock-off. The actual, good, open-source version that thousands of people rely on.
That's what self-hosting is. And it's the single best first project I know of for crossing the line from using what other people built to building things yourself.
What “self-hosting” actually means
Strip away the jargon and it's simple: instead of an app living on a company's computer somewhere and you renting access to it, the app lives on your computer, and you own the whole thing.
When you use a hosted service — say, a notes app in the cloud — your notes sit on their servers, under their rules, their price, their privacy policy, and their decision about whether the product still exists next year. When you self-host the same kind of app, it runs on a machine you control. Your notes never leave your house. There's no subscription. Nobody can deprecate it out from under you.
You reach it through a web browser, exactly like any other website — except the address points at your machine instead of theirs.
Why bother
Four reasons, roughly in the order people come to appreciate them:
- You stop renting your own digital life. A dozen $5–15/month subscriptions quietly add up to real money for tools you could run for the cost of electricity. More than the money, though, is the ownership: your data lives in your house, on your terms.
- Privacy that's structural, not promised. When the server is in your home, “we don't sell your data” stops being a policy you have to trust and becomes a fact of physics. The data isn't on anyone else's computer to sell.
- It's the best hands-on way to become a builder. Self-hosting quietly teaches you Linux, Docker, networking, and how the internet actually fits together — not from a tutorial, but because you want the thing to work. That's the kind of learning that sticks.
- Control. Your rules, your customizations, no feature held hostage behind a “Pro” tier, no app you love getting bought and shut down. It's yours.
Two ways to start: an old laptop, or a cheap VPS
There are two easy on-ramps, and the right one depends on what you have and what you want.

Option A — the old laptop (best if you have one). That machine in the drawer is a perfect first server. It's free, it's already yours, and it lives in your house — which is exactly where you want your private data. Laptops are secretly ideal for this: they're quiet, sip power, and come with a battery that acts as a built-in backup during a power blip. The tradeoff is that it only works while it's on and connected to your home network, and reaching it from outside the house takes an extra step (we'll get to that in a future issue).
Best for: privacy-first projects, anything storing personal data, and learning without spending a cent.
Option B — the cheap VPS (best if you don't, or want it always-on). A VPS — Virtual Private Server — is a small slice of a real server in a data centre that you rent for around $4–6/month (Hetzner, DigitalOcean, and Vultr are the usual starting points). It's always on, always reachable from anywhere, and comes with a proper static address, so remote access is easy from day one. The tradeoff: it's a few dollars a month, and your data now lives on someone else's hardware again — fine for plenty of things, less ideal for your most private stuff.
Best for: things you want reachable 24/7 from anywhere — a personal dashboard, a status page, a small site or bot.
You do not have to choose forever. Plenty of people (me included) end up running both. Pick whichever is in front of you today; the skills transfer completely.
The how-to: your first self-hosted app in about 30 minutes
Here's the whole game in one idea: install Docker, then run one app inside it. Docker is the piece of magic that makes modern self-hosting approachable — it packages an app and everything it needs into a single tidy container, so “installing” a complex piece of software becomes a couple of lines instead of an afternoon of dependency hell.

Step 1 — Get a Linux machine ready
- On the old laptop: install Ubuntu Server (free) from a USB stick — a 15-minute wizard — or, if you'd rather keep it simple, just install Docker Desktop on whatever OS it already runs. The purist path is Ubuntu Server; the fastest path is Docker Desktop on the existing OS. Either is fine for your first project.
- On a VPS: create the cheapest Ubuntu instance the provider offers, and you'll get an IP address and a way to log in over SSH:
ssh root@your-server-ip.
Step 2 — Install Docker
One official script does it on Ubuntu:
curl -fsSL https://get.docker.com | shThat's it. You now have the engine that runs containers.
Step 3 — Run something you'll actually use
Let's stand up a real, useful app. We'll use Stirling-PDF — a full, private PDF toolkit (merge, split, compress, sign, convert) that means you never have to upload a sensitive document to a sketchy free-PDF website again. One command:
docker run -d -p 8080:8080 --name stirling-pdf stirling/stirling-pdf:latestNow open a browser and go to http://localhost:8080 (on the laptop) or http://your-server-ip:8080 (on the VPS).
That's a running application. On a computer you own. That you installed. You are now self-hosting.
Don't love PDFs? Swap the last command for any starter you like: It-Tools (corentinth/it-tools) for a Swiss-army-knife of developer utilities, Memos (neosmemo/memos) for a private notes app, or Uptime Kuma (louislam/uptime-kuma) to monitor whether your other services are up. Same pattern, different image.
Step 4 — Make it survive a reboot
To keep your app running for real, graduate from a one-line docker run to a small docker-compose.yml file — a plain-text recipe describing your app that you can version, back up, and bring up with one command:
services:
stirling-pdf:
image: stirling/stirling-pdf:latest
ports:
- "8080:8080"
restart: unless-stopped
volumes:
- ./data:/usr/share/tessdataSave that, run docker compose up -d in the same folder, and your service now comes back on its own after a reboot. That restart: unless-stopped line is the difference between a toy and something you can rely on.
Reaching it from anywhere (the next step)
Right now your app answers on your home network or your server's IP. The natural next question is “how do I get to it securely from my phone, from anywhere?” — and the good news is you never have to expose your home to the raw internet to do it. Tools like Tailscale (a private network between your own devices) and Cloudflare Tunnel (a safe public doorway) make it painless. That's a whole post of its own, and it's coming.
What you actually just did
If you ran those commands, you didn't just install a PDF tool. You:
- provisioned a server,
- installed a container runtime,
- and deployed an application to it.
Those are the same verbs, in the same order, that run companies. You did them on a laptop from a drawer or a server that costs less than a coffee. The gap between “I use software” and “I run software” is now behind you — and it turns out to be a much smaller gap than it looks from the other side.

Where to go next: browse awesome-selfhosted — a giant catalogue of self-hostable apps — and pick the next one that solves a real annoyance in your week. That's the whole loop. Find an itch, run the container, own the result.
You can just host things. Go give that laptop a job.
Discussion
Sign in to leave a comment
Uses your Google account — no password needed.