Docker快速搭建Uptime Kuma网站多方面监控服务

文章已同步至【个人博客】,欢迎访问【我的主页】😃

文章地址:blog.fanjunyang.zone/archives/do...

前言

目前因为自己搭建的服务站点比较多,自己不能实时的监控服务的在线状态,有问题也没办法及时收到通知,不能及时修复和更新服务。

所以准备搭建一个在线监控服务,当然也可以不用自己搭建,直接使用【UptimeRobot】也可以。

网上搜索了一番,有很多监控服务,最终选择了Uptime Kuma,因为Uptime Kuma是开源的,并且搭建、使用起来非常简单方便,【体验地址】。

Uptime Kuma 是一个开源的自拓管在线监控工具,支持众多的特性:

  • 监控 HTTP(s)/TCP/Ping/DNS/Push/Steam 游戏服务器的在线时间
  • 支持多种通知服务,包括 Telegram、Discord、Slack、Pushover、Email、企业微信、钉钉、webhook 等70多种通知服务
  • 支持多国语言
  • 简单的状态页面
  • 监控图表、证书信息
  • 支持分享

效果图:

准备工作

  1. 服务器,国外、国内服务器都可,但是国内服务器用不了Telegram、Discord、Slack等通知服务
  2. 服务器需安装docker、docker-compose环境,没安装的可参考文章 - docker、docker-compose安装
  3. 反代服务,可以使用Nginx、Caddy,如果不熟悉的话,可以使用可视化Nginx服务 - Nginx Proxy Manager
  4. GitHub地址:github.com/louislam/up...
  5. Docker镜像地址:hub.docker.com/r/louislam/...

搭建方式

推荐用 Docker 的方式进行搭建

创建目录

bash 复制代码
mkdir -p /root/docker_data/uptime_kuma
cd /root/docker_data/uptime_kuma

创建yml文件

/root/docker_data/uptime_kuma 文件夹下面新建 docker-compose.yml 文件如下:

yaml 复制代码
version: '3.3'

services:
  uptime-kuma:
    image: louislam/uptime-kuma
    container_name: uptime-kuma
    volumes:
      - /root/docker_data/uptime_kuma/data:/app/data
    ports:
      - 3001:3001	# 端口可自己定义

运行yml文件

进入/root/docker_data/uptime_kuma文件夹下面,运行命令:docker-compose up -d

或者在任意文件夹下面,运行命令:docker-compose -f /root/docker_data/uptime_kuma/docker-compose.yml up -d

然后服务就跑起来了,运行 docker ps 能查看到启动的容器了。

配置反向代理

域名配置下DNS解析。

Nginx反向代理配置(要开启Websocket):

ini 复制代码
server {
  server_name uptime.fanjunyang.zone;
  listen 443 ssl http2;
  ssl_certificate xxx;
  ssl_certificate_key xxx;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
  listen 80;
  if ($scheme = http) {
    return 301 https://$host:443$request_uri;
  }
  location / {
    proxy_pass http://172.17.0.1:3001;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $http_host;
    proxy_set_header X-Forwarded-Port $server_port;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_redirect http:// https://;
  }
}

使用

访问配置的域名,设置语言、用户名、密码,创建即可

然后自己就可以添加监控了,非常简单,如下图:

添加监控后可以设置通知(或者先设置通知,后添加监控)国内的服务器无法用Telegram、Discord、Slack等服务,所以可以使用 Email 邮件或钉钉等方式进行通知,我是配置的邮件的方式,配置如下图:

剩下的配置,大家自己研究一下,配一下看看即可,之后服务一旦异常,就会收到通知。

相关推荐
code monkey.7 分钟前
【寻找Linux的奥秘】第一章:基础指令
linux·运维·服务器
anguruanjian1 小时前
安固软件指南:确保外发文件安全的全面策略
服务器·网络·安全·企业微信·安固软件
孙同学_1 小时前
【Linux篇】调试器-gdb/cgdb使用
linux·运维·服务器
自由鬼1 小时前
免费开源抓包工具Wireshark介绍
运维·服务器·网络·测试工具·网络安全·wireshark
dessler3 小时前
DeepSeek-进阶版部署(Linux+GPU)
linux·运维·服务器·云原生·大模型·deepseek
fanxiaohui121383 小时前
元脑服务器:浪潮信息引领AI基础设施的创新与发展
运维·服务器·人工智能
小林熬夜学编程3 小时前
【MySQL】第十五弹---全面解析事务:定义、起源、版本支持与提交方式
android·linux·服务器·开发语言·数据库·mysql
jiarg11 小时前
linux 内网下载 yum 依赖问题
linux·运维·服务器
yi个名字12 小时前
Linux第一课
linux·运维·服务器
菜鸟xy..12 小时前
linux 基本命令教程,巡查脚本,kali镜像
linux·运维·服务器·kali镜像·巡查脚本·nmtui