Docker home lab

A single mini PC with 16 GB RAM and a Docker install can replace roughly 100 USD per month of cloud subscriptions if you pick the right containers. The math is straightforward: Google One Family (10 USD), iCloud+ 200GB (3 USD), 1Password Family (5 USD), Netflix or Plex Pass (10 to 20 USD), a Trello Business Class (5 USD), a paper document scanner subscription (5 USD), a smart-home hub subscription (5 USD), a cheap VPS to run ad blocking (5 USD), an uptime monitor (10 USD) all add up quickly.

We picked eight Docker containers that displace real, monthly subscriptions in a home lab. Each one has a “who should skip this” note, because the wrong pick just moves the maintenance burden onto you.

What to look for in a self-hosted Docker container

Not every self-hosted app is a good idea. Screen the ones you deploy on this checklist.

Quick comparison

App Replaces Free tier Paid tier RAM at idle Deck platforms
Portainer Docker Desktop UI Community Edition Business (5 nodes free) 50 MB x86-64, ARM
Nextcloud Google Drive, iCloud Files Full self-host Enterprise support 300 MB x86-64, ARM
Immich Google Photos, iCloud Photos Full self-host None 500 MB x86-64, ARM
Vaultwarden 1Password Families Full self-host None 30 MB x86-64, ARM
Jellyfin Netflix, Spotify (owned files) Full self-host None 200 MB x86-64, ARM
Home Assistant Nest, Alexa Skills, IFTTT Full self-host Nabu Casa (7 USD/mo) 500 MB x86-64, ARM
Paperless-ngx Evernote Scannable, DocuSign Full self-host None 200 MB x86-64, ARM
AdGuard Home NextDNS, ControlD Full self-host None 30 MB x86-64, ARM

The apps

1. Portainer, the Docker cockpit

Portainer is the UI that makes the rest of this list bearable. Web dashboard for containers, stacks, images, volumes, and networks; role-based access if you share the lab with family; and a decent template library. Its Community Edition is enough for a personal home lab; the Business tier is free for up to 5 nodes and adds RBAC.

Where it falls short: The Business Edition’s most useful features (activity logs, GitOps deploy) sit behind a paid tier for larger deployments.

Pricing:

Platforms: Windows, Linux, macOS (Docker Desktop), ARM (Raspberry Pi 4+).

Download: portainer.io | GitHub

Bottom line: The one you install before anything else so the rest of the lab has a shared control plane.

2. Nextcloud, the Google Drive replacement

Nextcloud is the closest thing to a full drop-in for Google Drive plus Google Docs plus Google Calendar plus Contacts. File sync clients for Windows, macOS, Linux, Android, and iOS. Collaborative document editing (Nextcloud Office, formerly Collabora). Calendar and contacts via CardDAV/CalDAV. Two-factor auth built in.

Where it falls short: Web UI is heavier than Google Drive. First-time setup is fiddly if you skip the AIO (All-in-One) container.

Pricing:

Platforms: Windows, macOS, Linux desktop clients. iOS and Android mobile.

Download: nextcloud.com | GitHub

Bottom line: The Drive replacement for people who want the full Google Workspace shape.

3. Immich, the Google Photos replacement

Immich is the reason a lot of people ditch Google Photos. It has ML-powered face and object detection (opt-in), automatic phone uploads that actually work (background, incremental), timeline scrubbing, shared albums, and CarPlay-quality mobile apps for iOS and Android. It caught up to Google Photos in 2024 and passed it on some dimensions (shared album workflow) in 2025.

Where it falls short: ML jobs need a GPU or a lot of CPU on first pass. Requires PostgreSQL and Redis in the stack.

Pricing:

Platforms: Linux server. iOS, Android, web clients.

Download: immich.app | GitHub

Bottom line: The single best subscription-to-self-hosted swap on this list.

4. Vaultwarden, the 1Password replacement

Vaultwarden is a Rust-based Bitwarden server that speaks the official Bitwarden protocol. That means the official Bitwarden clients (browser extensions, mobile apps, CLI) all work against your server without any modification. RAM footprint is under 50 MB. A 1Password Families plan (5 USD/month) becomes a Docker container and a Tailscale tunnel.

Where it falls short: Not affiliated with Bitwarden. If enterprise features (SCIM, SSO federation) are a hard requirement, Bitwarden Enterprise is a better fit.

Pricing:

Platforms: All platforms via official Bitwarden clients.

Download: GitHub

Bottom line: The best 1Password replacement in the category, by a wide margin.

5. Jellyfin, the Netflix-for-owned-files

Jellyfin is Emby’s open-source fork, and it is the media server you use when Plex’s monetization pressure gets to you. Direct-play or transcode to any client, 4K HDR pass-through, smart TV apps on Roku, Fire TV, Google TV, Apple TV, and Samsung Tizen. LiveTV and DVR functions if you have an HDHomeRun.

Where it falls short: Metadata scraping is not as smart as Plex’s out of the box. Mobile apps have improved but still lag Plex’s polish.

Pricing:

Platforms: Linux server. Clients on Windows, macOS, Linux, iOS, Android, Apple TV, Roku, Fire TV, Google TV, Samsung Tizen, LG WebOS.

Download: jellyfin.org | GitHub

Bottom line: Free forever, and good enough to actually replace Plex for most people.

6. Home Assistant, the smart-home hub

Home Assistant is the smart-home hub Nest, Alexa Skills, and IFTTT wish they were. It supports 2000+ integrations (Zigbee, Z-Wave, Matter, Thread, LAN discovery), local processing that keeps working when the internet drops, and automations that fit any complexity you throw at them.

Where it falls short: The learning curve is real. You will spend a weekend on the first setup.

Pricing:

Platforms: Linux server, dedicated ODROID/HA Yellow hardware. Mobile apps on iOS and Android.

Download: home-assistant.io | GitHub

Bottom line: The hub that pays for itself the first time your ISP goes down and your lights still work.

7. Paperless-ngx, the document archive

Paperless-ngx turns a stack of paper into a searchable, tagged archive. OCR every scan on ingest, auto-classify by correspondent and document type, retention policies, and full-text search. If you own a Fujitsu ScanSnap or a Doxie, Paperless-ngx is what should sit downstream.

Where it falls short: Setup requires PostgreSQL, Redis, and a task worker. OCR on Raspberry Pi 4 is slow (use a mini PC).

Pricing:

Platforms: Linux server. Web UI is the primary client. Mobile clients via community apps.

Download: paperless-ngx.com | GitHub

Bottom line: The subscription killer for people who have avoided going paperless because they did not trust the cloud vendor.

8. AdGuard Home + Uptime Kuma, the network-plus-monitor stack

AdGuard Home is DNS-level ad and tracker blocking for your whole network, and Uptime Kuma is the “is everything still up” dashboard. Bundling them makes sense because you want both on the same box: AdGuard becomes your LAN DNS, Uptime Kuma pings all the other containers, and Portainer sits on top of both.

Where it falls short: AdGuard’s DNS-level blocking can break bank or insurance sites occasionally; you need a per-device bypass strategy. Uptime Kuma’s notification providers can flake on the free tier of some SMS gateways.

Pricing:

Platforms: Linux server. Web UI clients.

Download: AdGuard Home GitHub | Uptime Kuma GitHub

Bottom line: The last two containers you install and the two you will thank yourself for six months later.

How to pick the right one

FAQ

How much RAM do I need for a Docker home lab? 16 GB comfortably runs Immich, Vaultwarden, Jellyfin, Home Assistant, and AdGuard Home simultaneously. 8 GB works if you skip Immich’s ML jobs or Jellyfin’s transcoder.

Do I need a GPU for Immich or Jellyfin? Immich benefits from a GPU (or Apple Silicon’s ANE) for face and object detection. Jellyfin only needs a GPU for hardware transcoding.

What is the cheapest hardware for this stack? A used Beelink or Minisforum mini PC with an N100 or Ryzen 5 for 200 to 300 USD covers everything on this list.

Is Nextcloud faster than Google Drive? For local network transfers, yes. Over the internet, it depends on your upload bandwidth. A gigabit fiber upload will match or beat Drive; a 30 Mbps upload will not.

Do I need Tailscale or a VPN? Yes. Do not expose these containers to the raw internet. Tailscale or WireGuard adds two minutes of setup and closes off 90% of the attack surface.

What is the backup story for a Docker home lab? Volume backups nightly (borgbackup, restic, Kopia) to a second drive or a cloud target. Test the restore quarterly.