基于 Docker 搭建 Uptime-Kuma 一个极简风的应用监控

GitHub:https://github.com/louislam/uptime-kuma

一、uptime-kuma 介绍

Demo:https://uptime.wuhanjiayou.cn/

uptime-kuma 是一款开源的监控工具, 支持 TCP / PING / HTTP 等多种监控方式,可监测网站,数据库,Docker 容器,甚至能监测 Steam 游戏服务器,当服务出现故障时,可自动通过 Telegram、Discord、Gotify、Slack、Pushover、Email (SMTP) 等多种服务发送通知消息。

特点

  1. 监控服务可用性:Uptime Kuma 可以定期检查您的应用程序、网站或服务是否可用。它使用HTTP、TCP 和 ICMP 等协议来执行监测,以确保您的服务能够正常响应请求。
  2. 实时监控和状态显示:Uptime Kuma 提供了直观的仪表盘,显示您的应用程序和服务的实时状态。您可以立即了解到关键指标,如响应时间、成功率和故障详情。
  3. 灵活的告警通知:当您的应用程序或服务发生故障时,Uptime Kuma能够发送及时的告警通知,以便您能够立即采取行动。它支持多种通知方式,包括电子邮件、短信和Slack等。
  4. 多地点监控:Uptime Kuma 具有全球分布的监测节点,可以从多个地理位置监测您的应用程序和服务。这样可以确保您的服务在不同地区的用户都能够正常访问,并提供准确的性能数据。
  5. 自定义监测设置:您可以根据自己的需求配置监测设置。Uptime Kuma 允许您定义监测间隔、超时时间和成功条件等参数,以满足不同应用场景的要求。
  6. 历史数据和报告:Uptime Kuma 记录所有监测数据,并提供历史记录和性能报告。您可以查看过去的监测结果和趋势,以便进行性能分析和故障排除。

二、安装 Docker 软件包

我们采用 Docker 的方式部署。

// 1) 低版本 Docker 安装
yum install docker -y----
// < '推荐' >
// 2) 高版本 Docker 安装
curl -fsSL https://get.docker.com/ | sh----
// 关闭防火墙
systemctl disable --now firewalld
setenforce 0// 启用 Docker
systemctl enable --now docker

开始部署

// 创建目录
mkdir /docker/uptime-kuma/data -p && cd /docker/uptime-kuma/data// 启用容器
docker run -d --restart=always -p 3001:3001 -v /docker/uptime-kuma/data:/app/data --name uptime-kuma louislam/uptime-kuma// 验证容器
docker ps -a

image.png

注意:建议应用监控搭建在可长期稳定运行的主机上。

三、访问 uptime-kuma

拉完镜像后,我们就可以去前台啦。
地址:http://192.168.80.8:3001/setup( 当然确保你的 3001 端口是开着的)

配置好 管理员账户信息语言
image.png
image.png

四、配置 uptime-kuma

进入前台,**添加监控项 **的 URL 和名称。
我这里的话监控我的博客网站,类型是 HTTPS,然后点击保存即可。

image.png
image.png

设置页面
可以更改时区和外观、通知方式、反向代理等

image.png
image.png

我这里配置一个 电子邮件通知

smtp.163.com
465		( 阿里云主机只能配置该 SSL 加密端口发信 )
13294118252@163.com
SMTP 授权码: XXXXXXX
邮件主题: {{NAME}}:告警  地址: {{HOSTNAME_OR_URL}}

image.png
image.png

注意:
阿里云默认会 禁止基于 25 端口发信
我们可以选择使用

  1. **465 **( SMTP SSL 认证端口 )
  2. 587 ( SMTP 非 SSL 认证端口 )
telnet smtp.163.com 25
telnet smtp.163.com 465
telnet smtp.163.com 587

image.png

点击测试,消息正常发送
image.png
image.png

现在配置了 1 个 HTTPS。那我们在配置一个 Ping 的 监控项
还是一样的。配置监控类型,监控站点,设置通知即可。

image.png

更多功能可以自己探索~ 整体的报表还是非常简洁好看的!

image.png

新增状态栏
image.png
image.png

入口页面

选择为 状态栏

image.png
image.png

验证告警

image.png

大功告成~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/248109.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

再学css

盒模型 有两种&#xff0c; IE盒子模型、W3C盒子模型&#xff1b;盒模型&#xff1a; 内容(content)、填充(padding)、边界(margin)、 边框(border)&#xff1b;区 别&#xff1a; IE的content部分把 border 和 padding计算了进去; 标准盒子模型的模型图 从上图可以看到&#x…

mysql注入联合查询

环境搭建 下载复现漏洞的包 下载小皮面板 将下载好的文件解压在小皮面板的phpstudy_pro\WWW路径下 将这个文件phpstudy_pro\WWW\sqli-labs-php7-master\sql-connections\db-creds.inc 中的密码更改为小皮面板中的密码 选择php版本 在小皮中启动nginx和数据库 使用环回地址访…

react中使用useEffcet抛出错误“超出最大更新深度”

目录 【项目中部分代码】&#xff1a; 【说明】&#xff1a; 【抛出错误】&#xff1a;“超出最大更新深度” 【造成原因】&#xff1a; 【例如&#xff1a;】 【解决】&#xff1a; 【项目中部分代码】&#xff1a; // 类组件中&#xff1a;一进页面就拿到要notiveType的…

H2数据库学习总结

H2数据库-简介 H2 是开源的轻量级Java数据库。它可以嵌入Java应用程序中或以客户端-服务器模式运行。 H2 数据库主要可以配置为作为内存数据库运行&#xff0c;这意味着数据将不会持久存储在磁盘上。 由于具有嵌入式数据库&#xff0c;因此它不用于生产开发&#xff0c;而主要…

《HTML 简易速速上手小册》第6章:HTML 语义与结构(2024 最新版)

文章目录 6.1 语义化标签的重要性6.1.1 基础知识6.1.2 案例 1&#xff1a;使用 <article>, <section>, <aside>, <header>, 和 <footer>6.1.3 案例 2&#xff1a;构建带有嵌套语义化标签的新闻网站6.1.4 案例 3&#xff1a;创建一个带有 <mai…

k8s 进阶实战笔记 | Pod 创建过程详解

Pod 创建过程详解 ​ 初始状态0 controller-manager、scheduler、kubelet组件通过 list-watch 机制与 api-server 通信并检查资源变化 第一步 用户通过 CLI 或者 WEB 端等方式向 api-server 发送创建资源的请求&#xff08;比如&#xff1a;我要创建一个replicaset资源&…

《WebKit 技术内幕》学习之十五(4):Web前端的未来

4 Cordova项目 Cordova是一个开源项目&#xff0c;能够提供将Web网页打包成本地应用格式的可运行文件。读者可能对Cordova项目陌生&#xff0c;但是大家可能对它的前身非常熟悉&#xff0c;那就是PhoneGap项目&#xff0c;它后来被Adobe公司收购。 图15-4描述了Cordova的主要工…

【英语趣味游戏】填字谜(Crossword)第2天

谜题出处 柯林斯字谜大全&#xff08;6&#xff09;&#xff0c;Collins——Big Book of Crosswords (Book 6) Puzzle Number: 115 本期单词 横向 1、Fetch (8) 拿&#xff0c;取&#xff0c;8个字母 答案&#xff1a;Retrieve&#xff0c;取到&#xff0c;拿回 5、Common s…

小白水平理解面试经典题目LeetCode 455 Assign Cookies【Java实现】

455 分配cookies 小白渣翻译&#xff1a; 假设你是一位很棒的父母&#xff0c;想给你的孩子一些饼干。但是&#xff0c;你最多应该给每个孩子一块饼干。 每个孩子 i 都有一个贪婪因子 g[i] &#xff0c;这是孩子满意的 cookie 的最小大小&#xff1b;每个 cookie j 都有一个…

wsl-ubuntu 安装 nginx

wsl-ubuntu 安装 nginx 1. 安装 nginx2. 确认 nginx 启动状态3. 重启 nginx4. 停止 nginx 1. 安装 nginx sudo apt install nginx2. 确认 nginx 启动状态 systemctl status nginx3. 重启 nginx systemctl restart nginx4. 停止 nginx systemctl stop nginx完成&#xff01;…

【基于电商履约场景的 DDD 实战】阿里巴巴开源的 Cola 架构设计

欢迎关注公众号&#xff08;通过文章导读关注&#xff1a;【11来了】&#xff09;&#xff0c;及时收到 AI 前沿项目工具及新技术的推送&#xff01; 在我后台回复 「资料」 可领取编程高频电子书&#xff01; 在我后台回复「面试」可领取硬核面试笔记&#xff01; 文章导读地址…

【数据结构:顺序表】

文章目录 线性表顺序表1.1 顺序表结构的定义1.2 初始化顺序表1.3 检查顺序表空间1.4 打印1.5 尾插1.6 头插1.7 尾删1.8 头删1.9 查找1.10 指定位置插入1.11 删除指定位置数据1.12 销毁顺序表 数据结构(Data Structure)是计算机存储、组织数据的方式&#xff0c;指相互之间存在一…

vue3封装el-pagination分页组件

1、效果如图&#xff1a; 2、分页组件代码&#xff1a; <template><div class"paging"><el-config-provider :locale"zhCn"><el-paginationv-model:current-page"page.currentPage"v-model:page-size"page.pageSize…

C语言第十三弹---VS使用调试技巧

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 VS调试技巧 1、什么是bug 2、什么是调试&#xff08;debug&#xff09;&#xff1f; 3、Debug和Release​编辑​ 4、VS调试快捷键 4.1、环境准备 4.2、调试…

详讲api网关之kong的基本概念及安装和使用(一)

什么是api网关 前面我们聊过sentinel&#xff0c;用来限流熔断和降级&#xff0c;如果你只有一个服务&#xff0c;用sentinel自然没有问题&#xff0c;但是如果是有多个服务&#xff0c;特别是微服务的兴起&#xff0c;那么每个服务都使用sentinel就给系统维护带来麻烦。那么网…

【大数据】Flink SQL 语法篇(二):WITH、SELECT WHERE、SELECT DISTINCT

Flink SQL 语法篇&#xff08;二&#xff09; 1.WITH 子句2.SELECT & WHERE 子句3.SELECT DISTINCT 子句 1.WITH 子句 应用场景&#xff08;支持 Batch / Streaming&#xff09;&#xff1a;With 语句和离线 Hive SQL With 语句一样的&#xff0c;语法糖 1&#xff0c;使用…

成本更低、更可控,云原生可观测新计费模式正式上线

云布道师 在上云开始使用云产品过程中&#xff0c;企业一定遇见过两件“讨厌”事&#xff1a; 难以理解的复杂计费逻辑&#xff0c;时常冒出“这也能收费”的感叹&#xff1b; 某个配置参数调节之后&#xff0c;云产品使用成本不可预估的暴涨。 可观测作为企业 IT 运维必须品…

Python基础(二十九、pymsql)

文章目录 一、安装pymysql库二、代码实践1.连接MySQL数据库2.创建表格3.插入数据4.查询数据5.更新数据6.删除数据 三、完整代码示例四、结论 使用Python的pymysql库可以实现数据存储&#xff0c;这是一种连接MySQL数据库的方式。在本篇文章中&#xff0c;将详细介绍如何使用pym…

【LeetCode每日一题】56. 合并区间插入区间

一、判断区间是否重叠 力扣 252. 会议室 给定一个会议时间安排的数组 intervals &#xff0c;每个会议时间都会包括开始和结束的时间 intervals[i] [starti, endi] &#xff0c;请你判断一个人是否能够参加这里面的全部会议。 思路分析 因为一个人在同一时刻只能参加一个会…

Django知识随笔

目录 1.如何再ajax中传输post数据&#xff1f; 2.在form表单中使用jquery序列化&#xff0c;input框过多。 1.如何再ajax中传输post数据&#xff1f; 在ajax传递的那个网址&#xff0c;会调用你路由的视图函数&#xff0c;在视图函数上面加一句 csrf_exempt 。写上之后会有提…