After seeing Uptime Kuma show up in my Youtube feed, I decided to give it a shot. The Github directions aren’t exactly completely correct. Here is what I need to do in order to run it on a CentOS 8 Node
- dnf module enable nodejs:12
- Worker_threads module requires the NodeJS 12 version. The software will not install without version 12, and the default is version 10
- yum install npm git
- The directions assume npm and git are already installed, which on a base installation they are not
- git clone https://github.com/louislam/uptime-kuma.git
- cd uptime-kuma
- npm run setup
- npm install pm2 -g
- pm2 start server/server.js –name uptime-kuma
- You will recieve an error message at “/root/uptime-kuma/server/model/monitor.js:158
- Change if (this.getUrl()?.protocol === “https:”) {” to if (this.getUrl().protocol === “https:”) {“
- You will recieve an error message at “/root/uptime-kuma/server/model/monitor.js:158
- Run command 7 again and go to https://IP:3001
- Customize as you see fit

UPDATE – 10/26/2021
Commenter Jack Hughes pointed out that if you use NodeJS Version 14 that the edit to monitor.js is unnecessary and he is correct. Skip step 7 if you have 14 installed and follow the remaining steps.
To install NodeJS 14 do the following.
sudo yum -y install curl curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash –
yum install -y nodejs
node -v should return
[root@kuma uptime-kuma]# node -v
v14.18.1
Found a lot of problems with the use of ? in the javascript source code. If you install node version 14 it works fine without the javascript problems.
LikeLike
I wil try that and update the post as necessary thanks for the tip.
LikeLike