Skip to main content
  1. Posts/

Start Monitoring now! ...with Uptime Kuma

·4 mins· loading ·
Self-hosting Application
Timo
Author
Timo
Business Applications Architect, Network Engineer, Self-hosting Hobbyist.
Table of Contents

Uptime Kuma is an open-source monitoring platform designed to help you track the availability and performance of your online services.
With its user-friendly interface and customizable alerting system, Uptime Kuma provides real-time insights allowing you to proactively address issues and minimize downtime.
Uptime Kuma is a reliable choice for anyone seeking a comprehensive and robust monitoring solution …so what are you waiting for?

Requirements
#

For this simple yet powerful application all you really need to follow this tutorial is Docker / Docker Compose.

Installation
#

Create the installation directory for Uptime Kuma, in my case
/opt/uptime-kuma.

mkdir /opt/uptime_kuma

Generate the docker-compose.yml in the next step.

version: "3.8"

services:
  app:
    container_name: uptime-kuma
    image: louislam/uptime-kuma:1
    restart: unless-stopped
    volumes:
      - uptime-kuma:/app/data
    ports:
      - "<PORT>:3001"

volumes:
  uptime-kuma:
    driver: local
Don’t forget to set your desired <PORT>.

Start your container with

docker-compose up -d`.

How does it work?
#

Access Uptime Kuma via https://<YOUR_SERVER_IP>: and create your admin user.

Initial setup of admin user.
Initial setup of your admin user.

After automatically being logged in as your newly created admin user you will be presented by Uptime Kumas’ (still empty) Dashboard. Click on Add New Monitor to monitor your first service.

Uptime Kuma Dashboard.
Uptime Kuma Dashboard.

Monitor your Services
#

Uptime Kuma supports many different monitoring Types, ranging from a simple Ping to sensors for Docker Containers or DNS monitoring. We will start off with a quick HTTP(s) sensor of www.google.com to rudimentary keep track of our internet connection.

Creating the first monitor.
Creating the first monitor.

We have now created our first monitor which already is collecting data diligently.

Monitor collecting data.
Monitor collecting data.

This gives us a chance to manually check for uptime history and statistics but does this really help with noticing problems? How can we stay on top of our ‘homelab game’ and always be the first to notice any trouble regarding our self-hosted services?

What we really need are proactive notifications …

Setup Notifications
#

Uptime Kuma supports a wide range of notification services such asApporise, Telegram or Discord just to name a few. We will be setting up ntfy as notification service, it runs stable across many platforms and I’ve grown to become a huge fan of it.


Check this out …
Read more on how to properly set up your own instance of ntfy.

ntfy - Push Notification Service
·3 mins· loading
Self-hosting Application

Open the settings in the top right corner drop-down menu, navigate to ‘Notifications’ and ‘Setup Notification’.

Configure a notification type.
Configure a notification type.

Chose Ntfy as your Notification Type set everything up.

Set Ntfy as your notification service.
Set Ntfy as your notification service.

Friendly Name: Pick a name for the notification type.
nfty Topic: This has to be set up in ntfy first.
Server URL: URL of your Uptime Kuma instance.

You can also set this newly created notification type as default and enable it on all existing monitors.

Create a Status Page
#

If you need a quick overview of your services, the Status Page is the way to go. Click on Status Pages in the Header of Uptime Kumas’ Web GUI and add a New Status Page

Add a new Status Page.
Add a new Status Page.

Now give your Status Page a name, a descrption and add your newly created monitor Internet Uptime.

Configure the new Status Page.
Configure the new Status Page.

This gives you a good and quick overlook of all your monitors.

Status Page with monitor <code>Internet Uptime</code>.
Status Page with monitor Internet Uptime.

Of course this is highly scalable and you can add as many monitors as you wish, you can even group them and add tags.

Status Page of my homelab.
Status Page of my homelab.

Final Thoughts
#

The comprehensive monitoring and notification options paired with the simple setup process makes Uptime Kuma one of my favorite homelab tools, I’m using it for quite a while now and without it I’d feel blind. Uptime Kuma just works and I never even considered going on the lookout for another monitoring solution.
Try it out and I promise you will sleep even better with this proper monitoring solution 😉.

Consider leaving a ⭐ at the GitHub Repo if you like Uptime Kuma.