小型服务器监控太复杂?DashDot+cpolar轻量方案新手也能上手!

小型服务器监控太复杂?DashDot+cpolar轻量方案新手也能上手!

文章目录

前言

家里放了台小服务器跑服务,想看看CPU和内存占用,还得SSH登录输命令?太麻烦了!DashDot这款轻量级监控工具帮你搞定,网页版仪表盘直观显示服务器状态,颜值还超高✨。但问题来了,只能在同一网络查看,出门在外想看看服务器是否正常运行都不行?别慌,cpolar内网穿透来帮忙,让你的服务器仪表盘“随身带”,监控从此告别“命令行依赖”!

DashDot的核心功能就像给服务器装了“智能后视镜”,CPU、内存、磁盘、网络使用情况实时显示,还有漂亮的动态图表,连风扇转速都能监控到。它特别适合个人开发者和小型服务器用户,尤其是非专业运维的朋友,毕竟部署只要一条Docker命令,连我这种“技术小白”都能搞定。优点嘛,占用资源极少(内存不到50M),界面简洁又不失专业,手机访问也自适应屏幕,查看超方便。

用DashDot监控我的小服务器三个月,最大的感受是“终于不用背Linux命令了”!以前查磁盘空间得记df -h,看进程得用top,现在打开网页一目了然,红色警告一看就知道哪里出问题。不过提醒大家,安装时记得设置用户名密码,不然局域网内别人也能看到你的服务器信息,安全第一哦!

虽说DashDot简单好用,但局域网限制真的让人不放心。有次出差一周,回来发现服务器因为磁盘满了自动关机,要是能远程看看监控,早就发现问题了😤。而且朋友想参观我的“家庭服务器机房”(其实就是个小机柜),还得让他连我家WiFi才能看仪表盘,太麻烦了。

直到给DashDot配上cpolar,才算真正实现“服务器自由”!现在不管在哪,打开手机浏览器就能看服务器状态,数据1秒刷新,比SSH登录快多了。最惊喜的是cpolar支持自定义域名,我把监控地址设成“my-server.cpolar.cn”,好记又专业。前几天半夜服务器CPU突然飙升,我收到cpolar转发的告警邮件,打开手机一看是某个服务异常,远程重启就搞定,再也不用爬起来去机房了🌙。

本篇文章我们将使用Docker在本地部署DashDot服务器仪表盘,并且结合cpolar内网穿透工具可以实现公网实时监测服务器系统、处理器、内存、存储、网络、显卡等,并且拥有API接口。

1. 本地环境检查

本篇文章演示环境为CentOS 7,使用Xshell7进行ssh,需安装Docker(本次实践部署环境为个人测试环境,生产环境请谨慎)

1.1 安装docker

没有安装Docker的小伙伴需安装Docker,已有Docker可跳过以下步骤。

首先在终端中执行下方命令:

安装软件包(提供实用程序)并设置存储库

$ sudo yum install -y yum-utils $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 

安装Docker引擎

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 

启动Docker

sudo systemctl start docker 

通过运行映像来验证 Docker 引擎安装是否成功

sudo docker run hello-world 

1.2 下载Dashdot镜像

从docker hub拉取Dashdot镜像

 docker pull mauricenino/dashdot 
image-20240129161742919

2. 部署DashDot应用

创建部署目录

mkdir -p /data/dashdot 
cd /data/dashdot 

使用docker-cli创建Dashdot容器

docker run -d \ -p 8987:3001 \ -v /etc/os-release:/etc/os-release:ro \ -v /proc/1/ns/net:/mnt/host_ns_net:ro \ --privileged \ mauricenino/dashdot 

编辑docker-compose.yaml文件

version: '3' services: dashdot: image: mauricenino/dashdot ports: - 8987:3001 volumes: - /etc/os-release:/etc/os-release:ro - /proc/1/ns/net:/mnt/host_ns_net:ro privileged: true

使用docker compose方式快速创建Dashdot容器

 docker compose up -d 
image-20240129161858444

检查Dashdot容器状态,确保Dashdot容器正常启动

 docker ps
image-20240129162137481

检查Dashdot容器运行日志,确保Dashdot服务正常运行

# docker compose logs |grep 3001 dashdot-dashdot-1 | listening on *:3001 dashdot-dashdot-1 | port: 3001, 

3. 本地访问DashDot服务

访问地址:http://192.168.149.143:8987,将IP替换为自己服务器IP地址,在浏览器可以访问Dashdot服务器仪表盘首页。可以看出它识别出我的CPU ,内存,硬盘等信息都还是非常准确的

cc62e0093676b31cdb2d1860103d0e9

还支持暗黑模式,可以看出这个页面真的是非常的漂亮,并且全部以实时动态图形化的模块界面展示出来了,既美观又直观

138841987c987e7669069c1b34fb797

我们就成功在本地搭建了DashDot,但是如果你是一名程序员,有时候我们需要异地来监测自己的服务器,并且害怕网站被攻击,这个时候我们就需要使用cpolar内网穿透工具,实现在公网上监测服务器、网站、应用等。

4. 安装cpolar内网穿透

下面是安装cpolar步骤:

cpolar官网地址: https://www.cpolar.com
  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh |sudobash
  • 向系统添加服务
sudo systemctl enable cpolar 
  • 启动cpolar服务
sudo systemctl start cpolar 

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://服务器的局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可。

image-20230831171159175

接下来配置一下DashDot的公网地址,

登录后,点击左侧仪表盘的隧道管理——创建隧道,创建一个ashDot的公网http地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:8987 (本地访问的地址)
  • 域名类型:免费选择随机域名
  • 地区:选择China Top

点击创建

c3a958a16e2a3481b951d445c4dc97c

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

9d45c8a53f1a8ee47855a71fd2575b0

使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到DashDot界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问!

179968dde2681f098d93af0582aa65f

小结

如果我们需要长期异地远程访问DashDot进行监测,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。如果想把域名变成固定的二级子域名,并且不想每次都重新创建隧道,可以选择创建一个固定的http地址来解决这个问题。

5. 固定DashDot公网地址

我们接下来为其配置固定的HTTP端口地址,该地址不会变化,方便分享给别人长期查看你的博客,而无需每天重复修改服务器地址。

配置固定http端口地址需要将cpolar升级到专业版套餐或以上。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

ab167a7ae0920aaed958fcf267d67e0

保留成功后复制保留成功的二级子域名的名称

c05b5f40512fe9bbe40e7d892d10763

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

e4d9eea7113fec72f8a183ee5d6468e

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

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

点击更新(注意,点击一次更新即可,不需要重复提交)

b6d45e2c0b13660be8bbfa7f1fb2745

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

ce4ba78d8071cdf8860750497223285

最后,我们使用固定的公网https地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以进行异地监测本地服务器了系统!

3449856081e99269f7dfcc8ef4dfc2d

轻量级监控+远程访问,小服务器管理也能如此轻松!如果你也有台“默默无闻”的小服务器,不妨试试DashDot+cpolar,让服务器状态“可视化”,问题早发现早解决,运维从此“零门槛”~

本篇文章知识点来源[cpolar官网][https://www.cpolar.com]

  1. cpolar博客:配置二级子域名: https://www.cpolar.com/blog/configure-the-secondary-subdomain-name
  2. cpolar博客:配置自定义域名: https://www.cpolar.com/blog/configure-your-own-domain-name
  3. cpolar博客:配置固定TCP端口地址: https://www.cpolar.com/blog/configure-fixed-tcp-port-address
  4. cpolar博客:配置固定FTP地址: https://www.cpolar.com/blog/configure-fixed-ftp-address

Read more

GitHub 7大爆款Skills开源项目:Anthropic官方Skill Creator元技能+Superpowers 27k星任务拆解+Code Review自动代码审查

GitHub 7大爆款Skills开源项目:Anthropic官方Skill Creator元技能+Superpowers 27k星任务拆解+Code Review自动代码审查

Claude Agent Skills工具箱|GitHub 7大开源项目:Anthropic Skill Creator+Superpowers+Code Review+Context Engineering,AI元技能开发与上下文优化指南 技术背景:为什么Claude Skills是2025年AI Agent开发的必选项 随着Anthropic Claude在大模型领域的持续领跑,其Skills(技能)生态已成为AI Agent工程化落地的关键基础设施。与传统Prompt工程不同,Skills通过结构化的SKILL.md文件,将AI能力封装为可复用、可共享、可迭代的模块化组件,实现从"对话式交互"到"任务式执行"的范式转变。 当前,GitHub开源社区已涌现大量高质量的Claude Skills项目,涵盖元技能开发、代码审查自动化、上下文工程优化等核心场景。本文系统梳理7大高星开源项目,附完整技术解析与安全实践指南。 文章目录 * Claude Agent

Git Rebase 详解:原理、使用场景与回滚操作

Git Rebase 详解:原理、使用场景与回滚操作

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[[email protected]] 📱个人微信:15279484656 🌐个人导航网站:www.forff.top 💡座右铭:总有人要赢。为什么不能是我呢? * 专栏导航: 码农阿豪系列专栏导航 面试专栏:收集了java相关高频面试题,面试实战总结🍻🎉🖥️ Spring5系列专栏:整理了Spring5重要知识点与实战演练,有案例可直接使用🚀🔧💻 Redis专栏:Redis从零到一学习分享,经验总结,案例实战💐📝💡 全栈系列专栏:海纳百川有容乃大,可能你想要的东西里面都有🤸🌱🚀 目录 * Git Rebase 详解:原理、使用场景与回滚操作 * 引言 * 目录 * 1. 什么是 Git Rebase? * 1.1

告别996:GitHub Copilot将我的开发效率提升300%的实战记录

告别996:GitHub Copilot将我的开发效率提升300%的实战记录

👋 大家好,欢迎来到我的技术博客! 📚 在这里,我会分享学习笔记、实战经验与技术思考,力求用简单的方式讲清楚复杂的问题。 🎯 本文将围绕AI这个话题展开,希望能为你带来一些启发或实用的参考。 🌱 无论你是刚入门的新手,还是正在进阶的开发者,希望你都能有所收获! 文章目录 * 告别996:GitHub Copilot将我的开发效率提升300%的实战记录 * 引言:从疲惫到高效 * 什么是GitHub Copilot?🤖 * 效率提升300%的核心场景 * 1. 快速生成样板代码 * 2. 自动编写单元测试 * 3. 智能调试与注释 * 集成Copilot到工作流 * 步骤1:设置合理的期望 * 步骤2:结合IDE使用 * 步骤3:代码审查与调整 * 高级用法:超越代码生成 * 数据库查询优化 * API接口设计 * 正则表达式助手 * 数据支撑:效率提升分析 * 避坑指南:常见问题与解决 * 1. 可能生成过时或不安全代码

ESP32无人机识别终极方案:ArduRemoteID完整生态深度解析

ESP32无人机识别终极方案:ArduRemoteID完整生态深度解析 【免费下载链接】ArduRemoteIDRemoteID support using OpenDroneID 项目地址: https://gitcode.com/gh_mirrors/ar/ArduRemoteID 随着全球无人机监管政策的日益严格,RemoteID技术已成为无人机合规运营的关键环节。ArduRemoteID作为基于ESP32芯片的开源解决方案,为无人机识别提供了完整的技术生态。本文将深度解析该方案的技术架构、安全机制及商业应用价值。 技术架构深度解析 ArduRemoteID采用模块化设计架构,支持ESP32-S3和ESP32-C3双芯片平台,兼容7种主流开发板。系统核心由通信协议栈、安全引擎和Web服务三大组件构成。 多协议通信引擎 系统支持MAVLink与DroneCAN双协议栈,实现与ArduPilot飞行控制器的无缝集成。通信层采用分层设计: * 底层传输:支持WiFi广播、WiFi NAN、蓝牙4传统广播和蓝牙5长距离扩展广播四种模式 * 协议适配:MAVLink服务