Ubuntu 20.04 安装 Uptime-Kuma 自托管 Uptime Robot Alternative

Uptime-Kuma 是一个用 Nodejs 编写的免费、开源、自托管的监控工具。 它提供基于 Web 的界面并支持多种通知方法,包括 Webhooks、Telegram、Discord、Gotify、Slack、Pushover、电子邮件 (SMTP) 等。 Uptime-Kumacan 通过 TCP、Ping 和 HTTPS 监控远程主机或服务器的正常运行时间。 如果我们正在寻找监控远程服务器正常运行时间的工具,那么 Uptime-Kuma 是最适合我们的工具。

在这篇文章中,我们将向我们展示 Ubuntu 20.04 上安装 Uptime-Kuma 正常运行时间监控工具。

先决条件

  • 在 云平台上运行 Ubuntu 20.04 的服务器
  • 在我们的服务器上配置的 root 密码

第 1 步 – 创建 云服务器

首先,登录到我们的 云服务器。 创建一个新服务器,选择 Ubuntu 20.04 作为至少 2GB RAM 的操作系统。 通过 SSH 连接到我们的云服务器并使用页面顶部突出显示的凭据登录。

登录到服务器后,运行以下命令以使用最新的可用软件包更新基本系统。

apt-get update -y

第 2 步 – 安装 Node.js

Uptime-Kuma 是用 Node.js 编写的,因此我们需要将 Node.js 安装到我们的服务器上。

首先,使用以下命令安装所需的依赖项:

apt-get install curl git -y

接下来,使用以下命令添加 Node 源存储库:

curl -sL https://deb.nodesource.com/setup_14.x | bash -

接下来,使用以下命令安装 Node.js:

apt-get install nodejs -y

安装后,使用以下命令验证 Node.js 版本:

node --version

我们将获得以下输出:

v14.18.1

第 3 步 – 安装 Uptime-Kuma

我们可以使用以下命令从 GitHub 存储库下载最新版本的 Uptime-Kuma:

git clone https://github.com/louislam/uptime-kuma.git

下载完成后,将目录更改为 uptime-kuma 并使用以下命令进行设置:

cd uptime-kuma/
npm run setup

第 4 步 – 使用 pm2 运行 Uptime-Kuma

pm2 是 Node.js 的进程管理器。 它允许我们运行 Node.js 应用程序并使它们保持活动状态。 我们可以使用 NPM 安装 pm2,如下所示:

npm install pm2@latest -g

安装 pm2 后,将目录更改为 uptime-kuma 并使用以下命令运行它:

pm2 start npm --name uptime-kuma -- run start-server -- --port=3001 --hostname=127.0.0.1

我们将获得以下输出:

[PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
[PM2] Starting /usr/bin/npm in fork_mode (1 instance)
[PM2] Done.
┌─────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id  │ name           │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
├─────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0   │ uptime-kuma    │ default     │ N/A     │ fork    │ 14381    │ 0s     │ 0    │ online    │ 0%       │ 20.2mb   │ root     │ disabled │
└─────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘

我们可以使用以下命令检查应用程序日志:

pm2 logs

我们将获得以下输出:

0|uptime-k | Database Patched Successfully
0|uptime-k | JWT secret is not found, generate one.
0|uptime-k | Stored JWT secret into database
0|uptime-k | No user, need setup
0|uptime-k | Adding route
0|uptime-k | Adding socket handler
0|uptime-k | Init the server
0|uptime-k | Listening on 3001

接下来,让 Node.js 应用程序在系统重启后启动:

pm2 startup

输出:

/etc/systemd/system/pm2-root.service
Command list
[ 'systemctl enable pm2-root' ]
[PM2] Writing init configuration in /etc/systemd/system/pm2-root.service
[PM2] Making script booting at startup...
[PM2] [-] Executing: systemctl enable pm2-root...
Created symlink /etc/systemd/system/multi-user.target.wants/pm2-root.service → /etc/systemd/system/pm2-root.service.
[PM2] [v] Command successfully executed.
+---------------------------------------+
[PM2] Freeze a process list on reboot via:
$ pm2 save

[PM2] Remove init script via:
$ pm2 unstartup systemd

接下来,使用以下命令保存应用程序状态:

pm2 save

第 5 步 – 将 Apache 配置为 Uptime-Kuma 的反向代理

接下来,我们需要安装和配置 Apache 作为 Uptime-Kuma 的反向代理。

首先,使用以下命令安装 Apache 软件包:

apt-get install apache2 -y

安装 Apache Web 服务器后,使用以下命令启用所需的模块:

a2enmod ssl proxy proxy_ajp proxy_wstunnel proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html

接下来,为 Uptime-Kuma 创建一个虚拟主机配置文件:

nano /etc/apache2/sites-available/uptime-kuma.conf

添加以下行:


  ServerName kuma.example.com

  ProxyPass / http://localhost:3001/
  RewriteEngine on
  RewriteCond %{HTTP:Upgrade} websocket [NC]
  RewriteCond %{HTTP:Connection} upgrade [NC]
  RewriteRule ^/?(.*) "ws://localhost:3001/$1" [P,L]

保存并关闭文件,然后使用以下命令激活 Apache 虚拟主机配置文件:

a2ensite uptime-kuma

最后,重新启动 Apache 服务以应用更改:

systemctl restart apache2

第 6 步 – 访问 Uptime-Kuma Web 界面

现在,打开我们的 Web 浏览器并使用 URL http://kuma.example.com 访问 Uptime-Kuma Web 界面。 我们应该看到以下屏幕:
Kuma 设置管理员密码

在这里,创建我们的管理用户,设置我们的密码,然后单击创建按钮。 我们将被重定向到 Kuma 仪表板屏幕:
和仪表板

现在,单击添加新监视器以添加要监视的远程主机。 我们应该看到以下屏幕:
kuma添加监控主机page1
kuma添加监控主机page2

提供所有必要的信息,然后单击“保存”按钮。 我们应该在以下屏幕上看到远程主机的正常运行时间:
Kuma 监控主机仪表板

恭喜! 我们已经在 Ubuntu 20.04 上成功安装了 Uptime-Kuma 正常运行时间监控工具。 我们现在可以添加更多远程主机并从一个位置监控它们。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论