
miniboard是一款开源的、带有选项卡、正常运行时间监控和通知的轻量级仪表板。,可以通过GUI或yaml文件进行配置。
本次实践为个人测试环境,操作系统版本为centos7.6。
hostname | IP地址 | 操作系统版本 | Docker版本 |
|---|---|---|---|
jeven | 192.168.3.166 | centos 7.6 | 20.10.17 |
1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署miniboard轻量级监控仪表板。
检查Docker服务是否正常运行,确保Docker正常运行。
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2023-12-19 13:51:24 CST; 18min ago
Docs: https://docs.docker.com
Main PID: 11579 (dockerd)
Tasks: 8
Memory: 136.4M
CGroup: /system.slice/docker.service检查Docker版本
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701检查Docker compose版本,确保2.0以上版本。
[[root@jeven ~]# docker compose version
Docker Compose version v2.19.1从docker hub拉取miniboard镜像
[root@jeven ~]# docker pull aceberg/miniboard
Using default tag: latest
latest: Pulling from aceberg/miniboard
c926b61bad3b: Already exists
e4a1524e1610: Pull complete
6db695a80bb5: Pull complete
15bfa03d27b5: Pull complete
Digest: sha256:b9ba93c61148b2e4232870fcf5fca5fa6c3046e20f5d8ec327f7b5cbafdcbd57
Status: Downloaded newer image for aceberg/miniboard:latest
docker.io/aceberg/miniboard:latest可以使用docker-cli方式快速部署miniboard监控仪表盘,本次实践使用以下步骤的docker compose方式部署。
docker run -d --name miniboard \
-e "TZ=Asia/Shanghai" \
-v ~/.dockerdata/miniboard:/data/miniboard \
-v /var/run/docker.sock:/var/run/docker.sock \ # Only needed to create panel from Docker containers (On Edit panels page)
-p 8849:8849 \
aceberg/miniboard创建挂载目录/dataminiboard
mkdir -p /data/miniboard/data && cd /data/miniboard编辑docker-compose.yaml文件,使用docker compose方式创建miniboard容器
version: '3'
services:
miniboard:
image: aceberg/miniboard
container_name: miniboard
restart: always
ports:
- 7985:8849
volumes:
- /data/miniboard/data:/data/miniboard
- /var/run/docker.sock:/var/run/docker.sock
environment:
- TZ=Asia/Shanghai执行以下命令,快速创建miniboard容器.
[root@jeven miniboard]# docker compose up -d
[+] Running 2/2
⠿ Network miniboard_default Created 0.0s
⠿ Container miniboard Started 1.5s检查miniboard容器状态,确保miniboard容器正常启动。
[root@jeven miniboard]# docker compose ps
NAME COMMAND SERVICE STATUS PORTS
miniboard "./miniboard" miniboard running 0.0.0.0:7985->8849/tcp, :::7985->8849/tcp检查miniboard容器运行日志,确保miniboard服务正常启动。可以看到在容器日志中,已经成功监听到miniboard服务端口8849。
[root@jeven miniboard]# docker compose logs
miniboard | 2023/12/19 14:54:46 INFO: starting web gui with config /data/miniboard/config.yaml
miniboard | 2023/12/19 14:54:46 INFO: writing new Board file to /data/miniboard/board.yaml
miniboard | 2023/12/19 14:54:46 ===================================
miniboard | 2023/12/19 14:54:46 Web GUI at http://0.0.0.0:8849
miniboard | 2023/12/19 14:54:46 ===================================
miniboard | 2023/12/19 14:54:46 ERROR: SQL logic error: no such table: records (1)
miniboard | 2023/12/19 14:54:46 ERROR: SQL logic error: no such table: records (1)访问地址Lhttp://192.168.3.166:7985,将IP更换为自己服务器的IP地址,进入到miniboard初始页。如果外部客户端无法访问此页面,查看服务器是否关闭防火墙,如果是云服务器,则安全组需要放行对应的服务端口7985。如果在经常访问测试项目的浏览器上,可能会由于之前访问过相同的端口的服务造成访问miniboard失败,此时清除浏览器缓存即可。

在菜单栏,选择“Config”,进入系统设置页面,可以设置服务端口、主题等。


点击编辑面板选项,进入面板编辑页面。

在下方的“Create panel from Docker API”选项中,设置仪表盘名称,选择确认。

勾选扫描选项,设置扫描间隔时间为5分钟,保存确认。

查看Docker-API获取的容器列表


修改容器的IP访问地址为本机服务器IP地址,这里是192.168.3.166。也可以新增其余监控项,例如再新增一条监控宿主机httpd的web服务。

在tab管理页面,编辑tab名称,选择刚创建的面板,点击保存即可。

查看此时的仪表板首页,发现刚才添加的监控项已经成功监控。

Miniboard是一款轻量级监控仪表板工具,部署简单、使用方便。通过使用Docker进行快速部署,可以有效地节省服务器资源。Miniboard具有简洁的界面,能够清晰地显示监控项的状态。不仅可以监控宿主机上运行的Docker容器的状态,还可以监控网站的运行状态。对于个人服务器来说,Miniboard是一款非常实用的工具。
我正在参与2023腾讯技术创作特训营第四期有奖征文,快来和我瓜分大奖!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。