Setting up a brand-new home lab workstation is one of the most satisfying rituals in tech, but the real magic begins when you move past the base OS and start layering in your services.

For me, deploying these specific Docker containers is a non-negotiable first step on any new machine; they form the bedrock of my daily productivity, data sync, and self-hosted infrastructure. These are the fixed foundational containers that always get the green light on my setup.

Portainer

Visual container management dashboard

When I’m spinning up a new workstation, the very first container that goes live is Portainer. While I love the terminal and spend a massive chunk of my day writing docker-compose.yaml files. I don’t want to live in the command line just to check if a service is healthy.

Portainer acts as the ultimate command center for my home lab. Instead of constantly running terminal commands to troubleshoot, Portainer gives me a clean, lightweight web UI that lets me manage my entire container ecosystem at a glance.

When a new container refuses to start, typing out log commands gets old fast. With Portainer, I can view, search, and stream real-time container logs with a single click right from my browser.

It also offers effortless stack management, one-click control to clear out an old volume, and direct container access to tweak a config file.

Nginx Proxy Manager

Easy local reverse proxies

Once Portainer is running and I spin up more services, the next immediate challenge is managing network ports. I don’t want to memorize port numbers, like 192.168.1.50:8181 for one service and :3000 for another.

That’s where Nginx Proxy Manager comes in. It acts as the traffic controller for my home lab.

NPM gives me a simple web interface to route local traffic. It allows me to map clean, friendly domain names to my containers.

With NPM, I can map a custom local domain, such as mealie.local or kuma.home directly to a specific container and its port. It keeps my browser bookmarks clean and makes accessing services intuitive.

I can generate trusted SSL certificates, enforce HTTPS across my services, andcreate a quick access list.

Pi-hole

Network-wide ad blocker

Pi-hole is legendary in the self-hosting community, and for good reason. It acts as a local DNS sinkhole, blocking unwanted web traffic before it ever reaches my devices.

Instead of installing clunky ad-blocker extensions on every single browser and device in my house, I use Pi-hole to clean up the web at the source. Because it operates at the DNS level, it works globally across my entire local network and protects everything from my workstation and phone to smart TVs and IoT hardware.

Pi-hole is lightweight and features a brilliant web UI that provides real-time statistics on my network traffic.

BentoPDF

Private, local PDF editor

Whether I need to merge two documents, split a contract, or sign a form, I use BentoPDF instead of dealing with a sketchy web app or a bloated solution like Adobe Acrobat.

It’s a crucial part of my fresh workstation setup. Since I host BentoPDF on my server and access it via a local browser tab, I never upload my sensitive and private files to a third-party server.

BentoPDF supports a range of PDF editing tools and even features OCR functionality. Unlike most web tools that hit you with premium upgrades, watermarks, and file-size restrictions, BentoPDF has practically zero limits because it runs on my workstation hardware.

Mealie

Self-hosted recipe manager

While a lot of my home lab setup revolves around networking and infrastructure, I also want my workstation to solve real-world, everyday problems.

That is where Mealie comes into play. It is a highly polished, self-hosted recipe manager and meal planner that changes how I organize my kitchen, manage grocery lists, and plan out meals for the week.

Instead of keeping track of bookmarked web pages, messy text documents, or physical recipe cards, Mealies gives me a centralized digital database.

Mealie also offers one-click recipe scraping. All I have to do is paste a URL from virtually any cooking or food blog into Mealie, and its backend extracts ingredients and other details in no time.

I can even map out my meals throughout the week and glance over everything in an intuitive calendar view.

Uptime Kuma

Elegant service uptime monitor

Uptime Kuma serves as a dedicated internal heartbeat monitor, keeping an eye on my entire container infrastructure. Instead of waiting for a container to crash and finding out hours later when a service refuses to load, Uptime Kuma ensures I am the first to know about an outage.

It replaces guesswork with immediate visibility, offers a professional observation deck, and provides peace of mind in my workstation environment.

It continuously pings my local applications, websites, and network ports based on custom intervals.

Aside from real-time status tracking, Uptime Kuma offers a massive suite of instant notifications, private status pages, and even certificate tracking.

Spinning up freedom

A home lab is only as good as the utility it provides, and initializing your new workstation with these fixed containers strikes the perfect balance between robust infrastructure and practical daily value.

This stack sets up a clean management layer with Portainer and Nginx Proxy Manager, secures your environment via Pi-hole, and brings quality-of-life upgrades with Mealie and BentoPDF — all under the watchful eye of Uptime Kuma.

Now, your home lab is fully prepared for whatever complex projects you decide to layer on next.