Your own home lab quickly and easily

· 2 min read
Your own home lab quickly and easily

Your own home lab quickly and easily

As you already know, among other things, I host this website here at my home in my homelab.

This homelab is essentially based on Docker (Swarm) and some manual work.

Why set up your own home lab?

Well yes.. There are many different reasons why you should set up your own home laboratory.
This could be, for example, the opportunity to let off steam with new technologies or private hosting of websites and other services.

For my part, I use my homelab for the two reasons mentioned. On the one hand I want to try out new technologies without falling into a cost trap (for example, if I set up an instance on AWS for this) and on the other hand I host this website and other services (n8n, Vaultwarden, etc.).

How to start

Very easily. By doing it!
No, that's nonsense.

Basically, only the following things are required for this:

  • Old computers that are no longer used
  • A good internet connection
  • In the best case, a static IP address
  • A little bit of time

I run my Docker Swarm using Portainer Business (5 nodes are free in this version).

My setup currently looks like this:

Sketch of my current homelab

I have 3 nodes sharing workloads. The Portainer agent runs on all 3 nodes and Portainer itself runs in addition to the agent on node-1. Portainer is the UI, which distributes the individual workloads to the entire swarm and manages my cluster.

How to expose my workloads?

On my node-2 I have running a container for Nignx-Proxy-Manager which allows me to expose my individual workloads to the outside world if needed.

Nginx-Proxy-Manager UI

It helps me create and manage SSL certificates and add a domain or subdomain to my workloads if I want to put them on top of that.
This has the advantage that I can, for example, publish this website under the domain

In addition, this tool offers a few other features that can be really helpful, depending on your needs.
But you can find out more about this on the website.

What's next?

In another post I will go into how to make the whole thing accessible without a reverse proxy using a VPN.
But of course also how to set it all up sensibly and operate it safely.