How to Set Up a Home Server on Old Hardware (Plex, Backup, Pi-hole)

by Mark Thompson
Old ThinkPad T470 used as home server
TL;DR: Any laptop or desktop from the last 8 years can become a useful home server. Wipe Windows, install Ubuntu Server 24.04 LTS, set up Docker, then layer on Plex (media), Nextcloud (cloud storage), and Pi-hole (network ad blocking). Total cost: $0 if you have the hardware. Power draw: 30-60W on a Toronto basement laptop. Saves $30-50/month on Netflix, Dropbox, and ad-blocker subs.

The Lenovo ThinkPad T470 in my Toronto basement was about to head to Best Buy electronics recycling in 2022. Instead it runs Ubuntu Server 24.04, a Plex server feeding two TVs, a Nextcloud instance for the family, and Pi-hole blocking ads for every device on my network. Power bill impact: about C$8/month. Replacement cloud-service cost: ~$50/month.

Here is the exact stack I run, simplified for someone trying it for the first time.

Old ThinkPad T470 used as home server

What hardware do I need for a home server?

Almost anything still working. My recommendations in order of preference:

  • Old laptop with working battery – acts as its own UPS during power blips. T470, X1 Carbon, MacBook Pro 2015, anything dual-core or better with 8GB+ RAM.
  • Old desktop tower – more drive bays for storage. i5-6500 or better, 8GB+ RAM.
  • Mini PC (Intel NUC, Beelink) – power efficient, quiet.
  • Raspberry Pi 5 (8GB) – $80 USD, fine for Pi-hole + Nextcloud lite, weak for Plex transcoding.

My T470: i5-6300U, 16GB RAM, 256GB SSD + 4TB external USB drive. Cost me $0 (already owned). It handles two 1080p Plex streams simultaneously without breaking a sweat.

Why Ubuntu Server instead of Windows?

Free, stable, ships with no GUI overhead (more RAM for your apps), updates without nagging reboots, and Docker runs perfectly. Ubuntu Server 24.04 LTS gets security updates until 2034.

If terminal scares you, Ubuntu Desktop is a fine compromise. You lose some RAM to GNOME but everything else works.

How do I install Ubuntu Server?

  1. Download ISO from ubuntu.com/download/server.
  2. Create bootable USB with Rufus (Windows) or balenaEtcher.
  3. Boot from USB. Hit F12/F2/Esc at boot to pick boot device.
  4. Install. Pick “Install Ubuntu Server (minimized)”, set hostname, create user, install OpenSSH server when prompted.
  5. Reboot, log in, run sudo apt update && sudo apt upgrade -y.
  6. Set static IP in your router so the server has a predictable address (mine is 192.168.1.50).

My full first-Linux walk-through is in my Ubuntu beginner guide.

Ubuntu Server 24.04 install screen

Why Docker for everything?

One install per app. Easy upgrades. Easy backups (just the volume folders). Restart misbehaving apps in one second. Once you learn Docker basics, you will never install software directly again.

Advertisements

Install:

curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker $USER
sudo apt install docker-compose-plugin

Reboot. Done.

How do I set up Plex for media streaming?

A docker-compose.yml in /opt/plex:

services:
  plex:
    image: lscr.io/linuxserver/plex:latest
    container_name: plex
    network_mode: host
    environment:
      - PUID=1000
      - PGID=1000
      - VERSION=docker
    volumes:
      - ./config:/config
      - /mnt/media:/media
    restart: unless-stopped

Run docker compose up -d. Open http://server-ip:32400/web. Sign in with a free Plex account. Point libraries at /media (your USB drive).

Plex web interface library setup

What about Nextcloud and Pi-hole?

Same pattern – docker-compose files exist for each on their official docs. Pi-hole at github.com/pi-hole/docker-pi-hole, Nextcloud at hub.docker.com/_/nextcloud.

Pi-hole takes 5 minutes – install container, change router DNS to point at the server IP. Suddenly no ads on any device. Saves me from buying Premium tiers on a dozen apps.

What about security and remote access?

Do NOT forward ports from the internet to your server unless you know what you are doing. Use Tailscale or WireGuard for a private VPN to your home network. Tailscale free tier is 100 devices and works in 60 seconds.

For full-drive encryption on the server, my encryption guide covers LUKS-equivalent options. For backups of the server itself, see my free backup software roundup.

Pi-hole admin dashboard blocking ads

Frequently Asked Questions

Will running a server 24/7 hurt my old laptop?

Modern laptops are designed for it. Make sure airflow is unblocked. My T470 has been running 3+ years 24/7 with no issues.

Can I use Windows for a home server?

Yes, but you waste 4-8GB RAM on the OS and Updates will reboot the server randomly. Linux is the right answer here.

How much electricity does this use?

A 30W laptop running 24/7 = 21.6 kWh/month. In Toronto at ~14 cents/kWh that is C$3/month. A tower desktop closer to C$10/month.

Do I need a static internet IP?

No. Use Tailscale or Cloudflare Tunnel. Both work behind any home router with no port forwarding.

What if Plex transcoding is slow?

Direct stream by ripping content already in your devices’ native format. Or buy a used Intel NUC with Quick Sync for hardware transcoding ($150-300 USD).

Related Posts