Vigil监控工具Docker部署指南:实时监控服务器硬盘

简介: Vigil监控工具Docker部署指南:实时监控服务器硬盘

一、Vigil介绍

1.1 Vigil 简介

Vigil 是一个现代、轻量级、开源的服务器监控系统,专注于实时 S.M.A.R.T. 健康状态跟踪,帮助用户提前发现硬盘故障风险。

1.2 Vigil主要特点

  • 轻量级代理:采用单个 Go 编译的二进制文件,无外部依赖,几秒内即可部署到任意服务器。
  • Docker 服务器支持:中央服务端可通过 Docker 或 Docker Compose 快速容器化部署。
  • 快速网页仪表板:基于现代 HTML5/JavaScript 构建,界面即时加载并实时刷新数据。
  • 深度分析能力:提供原始 S.M.A.R.T. 属性、温度历史记录及详细的驱动器信息。
  • 预测性健康检查:通过高级算法分析硬盘状态,区分正常老化与潜在故障风险。
  • 持续监控机制:支持自定义报告间隔,并具备自动重连功能确保监控不中断。
  • 内置认证系统:集成安全的用户登录与会话管理,保护监控数据访问。
  • 驱动器别名功能:允许为硬盘设置自定义名称(如“Plex Media”或“备份驱动器”),便于识别。
  • HBA 控制器兼容:自动识别连接在 SAS HBA(如 LSI SAS3224)后的 SATA 驱动器。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。

hostname IP地址 操作系统版本 Docker版本 部署项目 备注
jeven 192.168.3.88 Ubuntu 24.04.2 LTS 28.5.0 Vigil ——

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Vigil服务器和硬盘监控系统工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
     Active: active (running) since Thu 2026-02-05 00:27:40 CST; 1s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 841698 (dockerd)
      Tasks: 65
     Memory: 73.5M (peak: 77.1M)
        CPU: 975ms
     CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

root@jeven:~# docker -v
Docker version 28.5.0, build 887030f

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven:~# docker compose version
Docker Compose version v2.39.4

四、拉取Vigil镜像

下载Vigil镜像,执行以下命令:

docker pull  ghcr.io/pineappledr/vigil:latest

在这里插入图片描述

五、创建Vigil服务端

5.1 创建部署目录

  • 创建部署目录
mkdir -p  /data/vigil/data  && cd  /data/vigil
  • 在测试环境下,设置目录权限。
 chmod -R 777 /data/vigil

5.2 创建Vigil服务端

可选:使用docker-cli方式部署,可参考以下命令:

docker run -d \
  --name vigil-server \
  --restart unless-stopped \
  -p 9080:9080 \
  -v /data/vigil/data:/data \
  -e ADMIN_PASS=your-secure-password \
  ghcr.io/pineappledr/vigil:latest

新建及编辑docker-compose.yaml文件,内容如下:

vim docker-compose.yaml
version: '3.8'

services:
  vigil-server:
    image: ghcr.io/pineappledr/vigil:latest
    container_name: vigil-server
    restart: unless-stopped
    ports:
      - "9080:9080"
    volumes:
      - /data/vigil/data:/data
    environment:
      - ADMIN_PASS=your-secure-password

创建Vigil服务端容器:

docker compose up -d

在这里插入图片描述

5.3 检查容器状态

检查Vigil服务段容器状态,当看到healthy时候,则容器运行正常。

root@jeven:/data/vigil# docker compose ps
WARN[0000] /data/vigil/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME           IMAGE                              COMMAND            SERVICE        CREATED              STATUS                        PORTS
vigil-server   ghcr.io/pineappledr/vigil:latest   "./vigil-server"   vigil-server   About a minute ago   Up About a minute (healthy)   0.0.0.0:9080->9080/tcp, [::]:9080->9080/tcp

5.4 检查容器日志

检查Vigil服务端容器日志,确保Vigil Server运行正常。

 docker compose logs

在这里插入图片描述

六、安装Vigil Agent

6.1 安装Vigil Agent容器

我们在需要被监控的机器上创建Vigil Agent容器,进行采集监控数据。其中--server的IP地址替换为Vigil Server端的IP地址。

docker run -d \
  --name vigil-agent \
  --net=host \
  --privileged \
  --restart unless-stopped \
  -v /dev:/dev \
  ghcr.io/pineappledr/vigil-agent:latest \
  --server http://192.168.3.88:9080 \
  --interval 60

在这里插入图片描述

6.2 检查Vigil Agent容器状态

确保Vigil Agent容器正常启动,如下所示:

root@jeven:/data/vigil# docker ps
CONTAINER ID   IMAGE                                                              COMMAND                   CREATED              STATUS           PORTS                                                    NAMES
fdc15bf2218d   ghcr.io/pineappledr/vigil-agent:latest                             "./vigil-agent --ser…"   About a minute ago   Up About a minute

七、访问Vigil服务面板

7.1 访问初始页

浏览器地址: http://<个人的服务器IP>9080,访问Vigil初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述

7.2 登录Vigil面板

使用默认用户名 admin 和在部署文件中通过 ADMIN_PASS 设置的密码,即可登录 Vigil 监控面板。

在这里插入图片描述

7.3 查看监控效果

Vigil Agent 必须部署在物理主机上才能监控磁盘健康状态;若在虚拟机中运行,由于虚拟磁盘通常不支持 S.M.A.R.T. 功能,监控面板将显示 “No drives found”。

在这里插入图片描述

八、总结

Vigil 通过轻量级架构实现了对物理磁盘 S.M.A.R.T. 健康状态的实时监控,部署简洁且资源占用低。服务端与代理分离的设计,兼顾了集中管理和本地硬件访问的需求。实践验证了其在物理机环境下的有效性,而虚拟机因缺乏真实磁盘支持无法采集数据。该方案适用于家庭服务器、NAS 或小型数据中心等需提前预警硬盘故障的场景。

相关文章
|
9天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
2803 16
|
6天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
2396 5
|
21天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23557 14
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
8天前
|
人工智能 JSON BI
DeepSeek V4-Pro 接入 Claude Code 完全实战:体验、测试与关键避坑指南
Claude Code 作为当前主流的 AI 编程辅助工具,凭借强大的代码理解、工程执行与自动化能力深受开发者喜爱,但原生模型的使用成本相对较高。为了在保持能力的同时进一步降低开销,不少开发者开始寻找兼容度高、价格更友好的替代模型。DeepSeek V4 系列的发布带来了新的选择,该系列包含 V4-Pro 与 V4-Flash 两款模型,并提供了与 Anthropic 完全兼容的 API 接口,理论上只需简单修改配置,即可让 Claude Code 无缝切换为 DeepSeek 引擎。
2097 2
|
2天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
1380 1
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
|
15天前
|
人工智能 缓存 Shell
Claude Code 全攻略:命令大全 + 实战工作流(完整版)
Claude Code 是一款运行在终端环境下的 AI 编码助手,能够直接在项目目录中理解代码结构、编辑文件、执行命令、执行开发计划,并支持持久化记忆、上下文压缩、后台任务、多模型切换等专业能力。对于日常开发、项目维护、快速重构、代码审查等场景,它可以大幅减少手动操作、提升编码效率。本文从常用命令、界面模式、核心指令、记忆机制、图片处理、进阶工作流等维度完整说明,帮助开发者快速上手并稳定使用。
3489 6
|
7天前
|
人工智能 安全 开发工具
Claude Code 官方工作原理与使用指南
Claude Code 不是传统代码补全工具,而是 Anthropic 推出的终端 AI 代理,具备代理循环、双驱动架构(模型+工具)、全局项目感知、6 种权限模式等核心能力,本文基于官方文档系统解析其工作原理与高效使用技巧。
1120 0

热门文章

最新文章