Uptime Kuma
I had a thought that a monitoring tool would come in handy. Getting a notification when a website or an application goes down is always handy. My first challenge with setting up a monitoring tool is how worthless it is if it is on the same host, network, and internet connection. So I would need to have the monitoring tool somewhere else. Thankfully we're in an age of cloud providers like Amazon Web Services, Microsoft Azure, Google Cloud Platform, Oracle Cloud, a thousand smaller choices. I've been working in the "Cloud" for twelve years now, so it was easy enough to spin up a cheap virtual private server running Ubuntu.
I first took a look at OneUptime, but it looks like it will be a little more resource intensive than I need or want. I also took a look at Uptime Kuma, which seems much more my speed for this project.
Install Uptime Kuma
Steps performed on VPS
sudo mkdir /apps
sudo mkdir /apps/Uptime-Kuma
cd /apps/Uptime-Kuma
sudo nano /docker-compose.yml
# Simple docker-compose.yml for Uptime-Kuma
# You can change your port or volume location
version: '3.3'
services:
Uptime-Kuma:
image: louislam/uptime-kuma:latest
container_name: Uptime-Kuma
volumes:
- ./uptime-kuma-data:/app/data
ports:
- 3001:3001 # <Host Port>:<Container Port>
restart: always
- I saved the
docker-compose.yml
file sudo docker-compose pull
sudo docker-compose up -d
sudo docker-compose ps
Uptime-Kuma /usr/bin/dumb-init –- extr ... Up (healthy) 0.0.0.0:3001->3001/tcp,:::3001->3001/tcp
Ok, I have it running now, but I run into some trouble accessing the application via a web browser. Each cloud provider always seems to do it just a little bit differently but was able to get it opened and working after a few minutes. I set up a quick monitor for Monica CRM as a test before I stop to eat some lunch.
After coming back from lunch I set up a DNS A record for status.domain.com
and point it to my VPS. Then I proceed with setting up a monitor for each of my homelab's applications.