当前位置: 首页 > news >正文

【开源监控工具】Uptime Kuma:几分钟设置实时监控你的网站性能

文章目录

    • 前言
    • 1.关于Uptime Kuma
    • 2.安装Docker
    • 3.本地部署Uptime Kuma
    • 4.使用Uptime Kuma
    • 5.cpolar内网穿透工具安装
    • 6.创建远程连接公网地址
    • 7.固定Uptime Kuma公网地址

前言

大家好!如果你是网站运维人员或者管理着多个站点,那么今天我要介绍的一款工具绝对能成为你的得力助手——Uptime Kuma。这款开源监控工具不仅拥有直观的图形用户界面,还能实时反馈服务器的各种状态信息,让你轻松掌握每一个细节。

无论是新手还是资深运维工程师,都能在几分钟内完成安装和设置,并且它支持多种监控类型,如HTTP、DNS、关键词匹配等。更重要的是,结合内网穿透工具,你甚至可以实现远程监控,无需公网IP或复杂的路由器配置。接下来,让我们一起深入了解Uptime Kuma的五大优势吧!

在这里插入图片描述

1.关于Uptime Kuma

Uptime Kuma可以添加的监控项包括HTTP(s)、TCP、HTTP(s)关键词、HTTP(s) JSON查询、Ping、DNS记录、推送、Docker容器运行时间、Steam游戏服务等常见网站运行参数。当服务器发生意外情况时,Uptime Kuma支持用户选择70多种通知服务,例如Telegram、Discord、Gotify、Slack、Pushover、电子邮件等,以便及时接收网站服务故障通知,帮助用户减少经济损失。

Uptime Kuma具有灵活高效的用户交互界面,用户可以根据需要隐藏或显示监控状态,并且可以使用网页标签功能对不同功能的网站进行分类,以便在特定时段关注高风险站点。此外,Uptime Kuma还提供多种语言支持,官方就提供了中文语言包。

Github地址:GitHub - louislam/uptime-kuma: A fancy self-hosted monitoring tool

以下是Uptime Kuma支持的功能特性:

  • 监控类型:支持监控 HTTP(s) / TCP / HTTP(s) 关键字 / HTTP(s) Json 查询 / Ping / DNS 记录 / Push / Steam 游戏服务器 / Docker 容器 / 数据库(SQL Server、PostgreSQL、MySQL、MongoDB、Redis 等)
  • 通知类型:支持 Telegram / Discord / Gotify / Slack / Pushover / Email / Webhook 等 90 多种通知方式
  • 检测间隔:支持最低 20 秒的检测间隔
  • 图表:支持以图表形式查看历史数据

img

2.安装Docker

本教程操作环境为Linux Ubuntu系统,在开始之前,我们需要先安装Docker。

在终端中执行下方命令安装docker:

curl -fsSL https://get.docker.com -o get-docker.sh

然后再启动docker

sudo sh get-docker.sh

最后我们在docker容器中运行下 hello world 看一下是否安装成功。

sudo docker container run hello-world

可以看到出现了hello world,说明我们已经安装docker成功,就可以进行下一步了

image-20241008151101668

3.本地部署Uptime Kuma

本项目提供了一键安装脚本:

sudo docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

一条命令实现,本项目使用的是3001端口,需要在防火墙放开。

image-20241008152837865

现在就已经安装成功啦!您可以通过打开Web浏览器输入localhost:3001来登录或注册您的Uptime Kuma啦!

注意

如果你想限制对 localhost 的公开(不为其他用户公开端口或使用反向代理),你可以像这样公开端口:

sudo docker run -d --restart=always -p 127.0.0.1:3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

image-20241008154100927

PS:如果因为网络问题拉取不到镜像,可以在终端执行下面这行命令,编辑配置文件

输入:

sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://hub.geekery.cn/","https://ghcr.geekery.cn"]
}
EOF

保存退出

然后执行:sudo systemctl restart docker

4.使用Uptime Kuma

注册登录后进入到仪表盘,可以直接点击左上角的”添加监控项“

image-20241008154248421

根据自己的需求选择监控类型,这里以监控cpolar为例,在URL中填写上cpolar的地址后保存

image-20241008154610010

稍等片刻就能看到监控的数据以及图标

image-20241008154640976

小结

上面在本地Linux中使用Docker成功部署了Uptime Kuma,并局域网访问成功。整体来说Uptime Kuma是一款非常不错的网站监控工具,它提供了完备的功能,并且具有非常好的实用性和易用性,并且也非常容易安装部署。

如果想在公网远程管理Uptime Kuma,就可以创建一个公网地址,这里我使用的是cpolar内网穿透,通过cpolar转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器,可节省大量的资金。

5.cpolar内网穿透工具安装

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

img

安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

img

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

6.创建远程连接公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: Uptimekuma注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:https://localhost:3001
  • 域名类型:随机域名
  • 地区:选择China Top

image-20241008162716882

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

image-20241008162834134

如下图所示,成功实现使用公网地址异地远程访问本地部署的Uptime Kuma

image-20241008162949031

使用上面的cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到我们Uptime Kuma管理界面,这样一个利用公网地址可以进行远程访问的隧道就创建好了,隧道使用了cpolar的公网域名,无需自己购买云服务器,可节省大量资金。使用cpolar创建隧道即可发布到公网进行远程访问,新域名登录,可能需要重新登陆!

7.固定Uptime Kuma公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

登录cpolar官网:https://www.cpolar.com

点击左侧的预留,选择保留二级子域名,地区选择china top,然后设置一个二级子域名名称,填写备注信息,点击保留。

image-20241008163159036

保留成功后复制保留的二级子域名地址:

image-20241008163253138

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20241008163344819

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China Top

点击更新

image-20241008163514702

更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20241008163623531

最后,我们使用固定的公网地址访问Uptime Kuma管理界面可以看到访问成功,一个永久不会变化的远程访问方式即设置好了。

image-20241008163721122

image-20241008163745084

通过本文的介绍,相信你已经对 Uptime Kuma 有了全面的认识,并了解了它在网站运维中的巨大价值。无论是简单的安装过程、强大的功能支持还是直观的可视化界面,都让这款开源工具成为了不可多得的好帮手。如果你还有任何疑问或需要进一步的帮助,请随时留言交流!

相关文章:

【开源监控工具】Uptime Kuma:几分钟设置实时监控你的网站性能

文章目录 前言1.关于Uptime Kuma2.安装Docker3.本地部署Uptime Kuma4.使用Uptime Kuma5.cpolar内网穿透工具安装6.创建远程连接公网地址7.固定Uptime Kuma公网地址 前言 大家好&#xff01;如果你是网站运维人员或者管理着多个站点&#xff0c;那么今天我要介绍的一款工具绝对…...

MATLAB画柱状图

一、代码 clear; clc; figure(position,[150,100,900,550])%确定图片的位置和大小&#xff0c;[x y width height] %准备数据 Y1[0.53,7.9,8.3;0.52,6.8,9.2;0.52,5.9,8.6;2.8,5.8,7.9;3.9,5.2,7.8;1.8,5.8,8.4]; % withoutNHC X11:6; %画出4组柱状图&#xff0c;宽度1 h1…...

stm32内部flash在线读写操作

stm32内部flash在线读写操作 &#x1f4cd;相关开源库文章介绍《STM32 利用FlashDB库实现在线扇区数据管理不丢失》 ✨不同系列&#xff0c;内部flash编程有所区别。例如stm32f1是按照页擦除&#xff0c;半字&#xff08;16bit&#xff09;或全字(32bit)数据写入&#xff1b;st…...

SpringCloud源码分析-nacos与eureka

一、高版本为什么优先用nacos 如果用alibaba springcloud&#xff0c;那么就是阿里的技术体系。nacos属于阿里的原生技术栈&#xff0c;所以阿里更偏向于用nacos作为服务发现注册。 二、对比分析 Spring Cloud Alibaba 推荐使用 Nacos 作为服务发现和配置管理的首选组件&…...

DCGAN模型详解

模型背景 在深度学习领域迅速发展的背景下,生成对抗网络(GAN)作为一种革命性的生成模型应运而生。 Ian Goodfellow等人于2014年首次提出GAN概念 ,开创了生成模型的新纪元。这一创新源于对深度学习在图像生成方面潜力的探索,旨在解决非监督学习中的关键问题:如何让机器创造…...

单片机-蜂鸣器实验

#include "reg52.h" typedef unsigned char u8; typedef unsigned int u16; sbit BEEPP2^5; //将 P2.5 管脚定义为 BEEP P2.5默认高电平 void delay_10us(u16 ten_us){ while(ten_us--); } void main() { u16 i2000;//脉冲2000次 while(1) { …...

SQL 分析函数与聚合函数的组合应用

目标&#xff1a;掌握 SQL 中分析函数&#xff08;窗口函数&#xff09;与聚合函数的组合使用&#xff0c;通过实际案例实现复杂业务需求&#xff0c;如同比、环比和趋势分析。 1. 分析函数与聚合函数的区别 聚合函数&#xff08;Aggregate Functions&#xff09;&#xff1a;…...

【项目】基于趋动云平台的Stable Diffusion开发

【项目】基于趋动云平台的Stable Diffusion开发 &#xff08;一&#xff09;登录趋动云&#xff08;二&#xff09;创建项目&#xff1a;&#xff08;三&#xff09;初始化开发环境&#xff1a;&#xff08;四&#xff09;运行代码&#xff08;五&#xff09;运行模型 &#xf…...

游戏如何检测iOS越狱

不同于安卓的开源生态&#xff0c;iOS一直秉承着安全性更高的闭源生态&#xff0c;系统中的硬件、软件和服务会经过严格审核和测试&#xff0c;来保障安全性与稳定性。 据FairGurd观察&#xff0c;虽然iOS系统具备一定的安全性&#xff0c;但并非没有漏洞&#xff0c;如市面上…...

【AIGC-ChatGPT进阶提示词指令】AI美食助手的设计与实现:Lisp风格系统提示词分析

引言 在人工智能助手的应用领域中&#xff0c;美食烹饪是一个既专业又贴近生活的方向。本文将详细分析一个基于Lisp风格编写的美食助手系统提示词&#xff0c;探讨其结构设计、功能实现以及实际应用效果。 提出你的菜系&#xff0c;为你分析&#xff0c;并生成图片卡片 提示词…...

库伦值自动化功耗测试工具

1. 功能介绍 PlatformPower工具可以自动化测试不同场景的功耗电流&#xff0c;并可导出为excel文件便于测试结果分析查看。测试同时便于后续根据需求拓展其他自动化测试用例。 主要原理&#xff1a;基于文件节点 coulomb_count 实现&#xff0c;计算公式&#xff1a;电流&…...

Javascript数据结构——图Graph

当然&#xff0c;让我们深入探讨一下JavaScript中的图数据结构&#xff0c;并列出一些常见的面试题及其代码示例。 图数据结构详解 图&#xff08;Graph&#xff09;是一种非线性的数据结构&#xff0c;由节点&#xff08;也称为顶点&#xff09;和连接这些节点的边组成。节点…...

搭建nginx文件服务器

方法一&#xff1a;通过docker方式搭建 1、创建一个nginx配置文件/etc/nginx/nginx.conf user nginx; worker_processes 1;error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;events {worker_connections 1024; }http {include mime.types;default_typ…...

Ubuntu Server安装谷歌浏览器

背景 服务器上跑爬虫服务器需要安装谷歌浏览器 安装 wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb### sudo apt install ./google-chrome-stable_current_amd64.deb...

Vue项目结构推荐(复杂国际化项目与一般项目结构)

Vue项目结构推荐 一、一般项目结构二、复杂国际化项目结构总结/建议 下面结构是基于Vue和TypeScript开发的项目结构下src包下的结构&#xff0c;若只用到vue与js。则去掉typescript部分的包即可。 一、一般项目结构 assets&#xff1a;存放静态资源&#xff0c;如图片、字体、样…...

hive-sql 连续登录五天的用户

with tmp as (select 梁牧泽 as uid, 2023-03-03 as dt union allselect 梁牧泽 as uid, 2023-03-04 as dt union allselect 梁牧泽 as uid, 2023-03-05 as dt union allselect 梁牧泽 as uid, 2023-03-07 as dt union allselect 梁牧泽 as uid, 2023-03-08 as dt union allsel…...

FPGA 4x4矩阵键盘 实现

1原理 FPGA(现场可编程门阵列)4x4矩阵键盘的实现原理主要基于行列扫描法,通过FPGA对键盘的扫描和识别,实现对键盘输入信号的采集和处理。以下是对FPGA 4x4矩阵键盘实现原理的详细解释: 一、矩阵键盘的基本原理 结构:4x4矩阵键盘由4行和4列组成,共16个按键。每个按键位…...

ruoyi开发学习

将若依框架中的若依元素删掉 1.删除主目录中的“若依官网”&#xff1a; 在后端项目中&#xff0c;idea里借助mysql管理工具&#xff0c;找到sys_menu数据表&#xff0c;双击打开&#xff0c;找到4 若依官网&#xff0c;选中点击减号&#xff0c;绿色上箭头刷新&#xff0c;删…...

MacBook_Xcode_Swift雨燕

Swift Swift Swift Swift是苹果公司开发的现代化编程语言&#xff0c; 专为Apple平台设计。其简洁语法、类型安全、Optionals处理、Playgrounds交互式环境、泛型编程、协议与扩展、闭包功能、枚举与关联值、结构体与类的高效内存管理、异步编程的async/await语法、Swift Packa…...

ABAQUS三维Voronoi晶体几何建模

材料晶体塑性理论与细观尺度上晶体几何模型相融合的模拟方法为探究材料在塑性变形过程中的行为机制以及晶体材料优化开辟了新途径。本案例演示在CAD软件内通过Voronoi建立晶体三维模型&#xff0c;并将模型导入到Abaqus CAE内&#xff0c;完成晶体材料的有限元建模。 在AutoC…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例&#xff1a;使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例&#xff1a;使用OpenAI GPT-3进…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...