news 2026/4/23 13:06:17

WatchAlert 轻量级AI日志告警 - Docker安装部署

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
WatchAlert 轻量级AI日志告警 - Docker安装部署

全面兼容主流可观测技术栈

监控类型 支持的数据源

Metrics Prometheus、VictoriaMetrics

Logs Loki、ElasticSearch、VictoriaLogs、ClickHouse、SLS(阿里云日志服务)、TLS(火山云日志服务,开发中)、CLS(腾讯云日志服务,开发中)

Traces Jaeger

Events Kubernetes 事件监控

基础协议监测 HTTP、ICMP、TCP、SSL

告警机器人 飞书、钉钉、企业微信、邮件、自定义 Webhook、Slack

🔍 核心亮点

🧠 AI 智能分析

基于 AI 技术对告警内容进行深度语义解析,自动识别异常模式

提供根因推测、排查建议与修复思路,让每一次告警都“言之有物”

🕰️ 完善的值班机制

支持轮班排班、节假日调整、值班交接等场景

告警通知精准匹配责任人,确保第一时间响应

⚡ 告警升级机制

多级告警策略配置:从首次触发到升级通知,层层保障不漏报支持超时重试、通知升级、负责人转接等功能,保障告警闭环处理

📊 Namespace 级告警分类

支持以命名空间(Namespace)为单位进行告警分组管理

清晰分类,快速定位,大幅提升故障处理效率

安装部署

环境准备

要安装最新版Docker-CE,支持compose V2

网络支持访问Dockerhub,国内可能需要配置加速源。

已安装Git,用于下载部署文件。

需要占用本机TCP端口:80、3306、6379、9001,确保空闲。

Docker 国内安装

PS:安装最新版,使用compose V2部署。

https://mirror.nju.edu.cn/mirrorz-help/docker-ce/?mirror=NJU

Docker Hub国内加速

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": [

"https://docker-0.unsee.tech",

"https://docker-cf.registry.cyou",

"https://docker.1panel.live"

]

}

EOF

systemctl daemon-reload && sudo systemctl restart docker

systemctl enable docker

Git 下载部署文件编排启动容器

PS:如果没git,可用dnf install git或 apt install git 安装。

cd /opt

git clone https://github.com/opsre/WatchAlert.git

# 国内如果无法通过Github下载,可替换为在Gitee下载> git clone https://gitee.com/semaik/WatchAlert.git

cd /opt/WatchAlert/deploy/docker-compose

# 进入docker-compose.yaml 文件所在目录进行部署

sed -i 's|docker.io/||g' docker-compose.yaml

# 删除docker.io字段,确保自动使用加速器。

docker compose up -d

# 拉取镜像并在后台启动

docker compose ps

# 查看启动状态,注意第一次启动需要启动init-mysql 容器用于初始化数据库,初始化完成后会自动停止。

访问Web 初始化admin密码

浏览器打开http://你的主机IP,第一次访问如下。点击初始化 admin密码。

输入两次密码后点击提交,然后使用admin账号进行登录。

登录后界面如下

部署后删除init-mysql容器和升级操作

将docker-compose.yaml 文件重写如下

vim /opt/WatchAlert/deploy/docker-compose/docker-compose.yaml

PS:删除init-mysql容器是为了防止下次启动再次导入数据库,但注意要在成功初始化密码登录Web后操作。

services:

w8t-service:

container_name: w8t-service

image: docker.io/cairry/watchalert:latest

environment:

- TZ=Asia/Shanghai

volumes:

- ../../config/config.yaml:/app/config/config.yaml

restart: always

privileged: true

ports:

- "9001:9001"

healthcheck:

test: ["CMD", "wget", "localhost:9001/hello"]

interval: 5s

timeout: 2s

retries: 10

depends_on:

- w8t-mysql

- w8t-redis

networks:

- w8t

w8t-web:

container_name: w8t-web

image: docker.io/cairry/watchalert-web:latest

environment:

- TZ=Asia/Shanghai

restart: always

privileged: true

ports:

- "80:80"

networks:

- w8t

w8t-redis:

container_name: w8t-redis

image: redis:latest

ports:

- "6379:6379"

command: [ "redis-server", "/usr/local/etc/redis/redis.conf" ]

volumes:

- ./redis:/data

- ./redis.conf:/usr/local/etc/redis/redis.conf:ro

environment:

- TZ=Asia/Shanghai

restart: always

networks:

- w8t

w8t-mysql:

container_name: w8t-mysql

image: mysql:8.0

ports:

- "3306:3306"

volumes:

- ./mysql:/var/lib/mysql

environment:

- TZ=Asia/Shanghai

- MYSQL_ROOT_PASSWORD=w8t.123

- MYSQL_DATABASE=watchalert

restart: always

networks:

- w8t

networks:

w8t:

driver: bridge

删除init-mysql容器

docker compose up -d --remove-orphans

# 删除多余容器

docker compose ps

NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS

w8t-mysql mysql:8.0 "docker-entrypoint.s…" w8t-mysql 29 minutes ago Up 29 minutes 0.0.0.0:3306->3306/tcp, [::]:3306->3306/tcp, 33060/tcp

w8t-redis redis:latest "docker-entrypoint.s…" w8t-redis 29 minutes ago Up 29 minutes 0.0.0.0:6379->6379/tcp, [::]:6379->6379/tcp

w8t-service docker.io/cairry/watchalert:latest "/app/w8t" w8t-service 29 minutes ago Up 29 minutes (unhealthy) 0.0.0.0:9001->9001/tcp, [::]:9001->9001/tcp

w8t-web docker.io/cairry/watchalert-web:latest "/docker-entrypoint.…" w8t-web 29 minutes ago Up 29 minutes 0.0.0.0:80->80/tcp, [::]:80->80/tcp

# 查看状态如上

升级到最新版

docker compose pull

docker compose up -d

## 拉取最新版镜像,并更新运行中的容器镜像为最新版。

日志数据源:ELK部署和Vlog部署教程

ELK系列:https://songxwn.com/categories/linux/ELK/

VictoriaLogs系列:https://songxwn.com/tags/VictoriaLogs/

Docker Compose配置文件讲解

用于定义和管理一个名为 WatchAlert 的多容器应用。它包含四个服务:w8t-service、w8t-web、w8t-redis 和 w8t-mysql,并使用一个名为 w8t 的自定义网络。下面是详细讲解:

🧩 总体结构说明

使用 docker-compose 来编排多个容器服务。

所有服务都连接到同一个网络 w8t,便于容器之间通信。

设置了时区为 Asia/Shanghai,适用于中国大陆或港澳地区。

🚀 服务详解

1. w8t-service:主后端服务

镜像:cairry/watchalert:latest

端口映射:将容器的 9001 端口映射到主机的 9001 端口。

配置挂载:将主机上的 ../../config/config.yaml 挂载到容器内 /app/config/config.yaml。

健康检查:

每 5 秒检查一次 /hello 接口是否可访问。

超时时间为 2 秒,最多重试 10 次。

依赖服务:启动前依赖 w8t-mysql 和 w8t-redis。

权限:privileged: true 赋予容器更高权限(慎用)。

2. w8t-web:前端 Web 服务

镜像:cairry/watchalert-web:latest

端口映射:容器的 80 端口映射到主机的 80 端口。

权限:同样设置为 privileged: true。

用途:提供用户界面,供浏览器访问。

3. w8t-redis:缓存数据库服务

镜像:redis:latest

端口映射:6379 是 Redis 默认端口。

配置挂载:

数据目录挂载到 ./redis。

Redis 配置文件挂载为只读到 /usr/local/etc/redis/redis.conf。

启动命令:使用指定配置文件启动 Redis。

4. w8t-mysql:关系型数据库服务

镜像:mysql:8.0

端口映射:3306 是 MySQL 默认端口。

数据挂载:将数据目录挂载到主机的 ./mysql。

环境变量:

设置时区。

设置 root 密码为 w8t.123。

初始化数据库名为 watchalert。

🌐 网络配置

networks:

w8t:

driver: bridge

所有服务都连接到 w8t 网络。

使用 bridge 驱动,适合单机部署。

基础配置流程

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/21 19:33:05

Double Take人脸识别系统:一站式多引擎解决方案终极指南

Double Take人脸识别系统&#xff1a;一站式多引擎解决方案终极指南 【免费下载链接】double-take Unified UI and API for processing and training images for facial recognition. 项目地址: https://gitcode.com/gh_mirrors/dou/double-take 在人工智能技术飞速发展…

作者头像 李华
网站建设 2026/4/22 8:14:57

XGW-9000系列高端新能源电站边缘网关技术可行性分析报告V2

目录 项目概况与分析框架 一、硬件架构技术可行性分析 1.1 核心处理器选型与性能评估 1.2 国密加密芯片技术评估 1.3 工业级组件集成分析 二、软件架构与系统设计可行性分析 2.1 操作系统选型与实时性支持 2.2 容器化部署技术评估 2.3 系统启动优化方案 三、通信协议…

作者头像 李华
网站建设 2026/4/23 11:46:24

Obsidian科研笔记模板:打造高效科研工作流的终极指南

Obsidian科研笔记模板&#xff1a;打造高效科研工作流的终极指南 【免费下载链接】obsidian_vault_template_for_researcher This is an vault template for researchers using obsidian. 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian_vault_template_for_research…

作者头像 李华
网站建设 2026/4/23 11:46:24

ModernWMS仓库管理系统高效部署实操指南

ModernWMS仓库管理系统高效部署实操指南 【免费下载链接】ModernWMS The open source simple and complete warehouse management system is derived from our many years of experience in implementing erp projects. We stripped the original commercial system wms functi…

作者头像 李华
网站建设 2026/4/23 11:45:13

Temporal 技术调研报告

一、技术概述1.1 定义与核心定位Temporal 是一款开源的分布式工作流编排平台&#xff0c;核心定位是解决分布式系统中 “复杂异步流程的可靠执行” 问题。它基于 “持久化工作流” 理念&#xff0c;将业务流程抽象为可中断、可恢复、可追溯的工作流实例&#xff0c;屏蔽分布式环…

作者头像 李华
网站建设 2026/4/23 11:45:12

一课一得:SQL 视图与索引的学习总结

一、目录学习背景&#xff1a;为什么学视图与索引&#xff1f;知识点 1&#xff1a;SQL 视图 —— 从 “复杂查询” 到 “一键复用”知识点 2&#xff1a;SQL 索引 —— 让查询 “飞” 起来的优化工具我的优秀项目&#xff1a;多场景视图 索引的联动实践踩坑实录&#xff1a;从…

作者头像 李华