Installing Uptime Kuma: Easily Monitor Your Home Lab Services

Uptime Kuma in Proxmox LXC!!!

Harish Thangadurai
5 min readApr 28, 2024

In the previous article, we delved into the step-by-step process of installing Prowlarr in our Home Lab.

Now, let’s focus on another valuable tool to easily monitor the health of the services deployed on our Home Lab — Uptime Kuma.

What is Uptime Kuma?

Uptime Kuma is a free, open-source monitoring tool designed to keep a watchful eye on your websites, applications, and servers. With Uptime Kuma, you can gain valuable insights into their uptime and performance, ensuring they operate smoothly and avoid unexpected outages.

Uptime Kuma offers a comprehensive solution for monitoring the availability and performance of servers, websites, services, and network devices. With its intuitive interface and robust feature set, Uptime Kuma empowers administrators to proactively identify and address potential issues before they escalate, minimizing downtime and optimizing resource utilization.

Steps to install Uptime Kuma:

  • We’ll be using Portainer Stack to install Uptime Kuma in our Home Lab. First, let us log in to our Portainer instance and then head to our local docker instance by clicking on the local option.
  • Here we can use the Stack option to deploy our Uptime Kuma instance using our docker-compose file. Let’s click on the Stacks option.
  • We can click on the Add Stack button on the top right corner to create a new stack.
  • We can give the name of the stack, then copy and paste the below docker-compose file of our Uptime Kuma instance.
version: '3.9'
services:
uptime-kuma:
image: 'louislam/uptime-kuma:1'
container_name: uptime-kuma
volumes:
- uptime-kuma:/app/data
ports:
- '3001:3001'
restart: always

volumes:
uptime-kuma:
  • Once done we can click on the Deploy the Stack button to deploy our Uptime Kuma instance.
  • We can see that the stack has been successfully created. On viewing it, we can see that our Uptime Kuma instance has been successfully installed and the container has started running.

We have successfully installed the Uptime Kuma instance on our Home Lab. We now need to configure our Uptime Kuma to start using it.

Configuring Uptime Kuma:

  • First, we need to head to the Uptime Kuma’s admin console. By default the admin console would reside in port 3001 for Uptime Kuma (in docker-docker compose we left it at 3001). We can type in the IP Address:3001 to open the same.
  • We will be greeted with the above screen. We can fill in the details of our admin account and click on the create button to create an account.
  • Once we create the account, we will be landing on the above page. Here we can add the services of our Home Lab which we would like to monitor.
  • To add our first service, we can click on the Add New Monitor button on the top left corner of the screen.
  • Here, there are various options. We can select the appropriate options based on the service and type that we would like to monitor.
  • As an example, I’ll add the IP of our Nginx Proxy Manager instance that we deployed a few articles back.
  • Upon filling in the details, we can click on the Save button to add our very first service to monitor.
  • We have now successfully added our very first service to monitor in our Uptime Kuma instance. Uptime Kuma would now periodically check for the availability of the service and would monitor the service based on the configuration using which we added our service.

We have now successfully installed and configured our Uptime Kuma instance. Now we will be able to monitor the availability of the services easily upon adding them to Uptime Kuma. There are many configuration options available using which we can add a service to Uptime Kuma to monitor. There are also notification options using which we can receive messages or emails if one of our services is down. Feel free to play around with the configuration options.

Generally, it is a best practice to deploy monitoring services like Uptime Kuma in a separate server or on a VPS isolating it from our other Home Lab services so that we will be able to get information if any of our services goes down. If it deployed on the same server as our other services then we might not know if our whole Home Lab goes offline.

In this article, we have explored Uptime Kuma and went into the step-by-step process of deploying the same in our Home Lab.

In the next article, we will be looking into another service that we will be deploying in our Home Lab. Stay tuned for more detailed instructions on expanding our Home Labbing capabilities.

Happy Homelabbing!!!

--

--

Harish Thangadurai

👨‍💻 Automation Engineer | 🌍Tech Explorer | 🧠 Lifelong Learner