简单但现代的服务器仪表板Dashdot

小区门口的快递架一大早拆了,快递员、送餐员现在可以进小区了。

常态化的核酸和每周一次的全区全员核酸筛查还在继续中,周末睡懒觉的计划又泡汤了。


什么是 Dashdot ?

dash. (或者 dashdot) 是一个现代服务器仪表板,主要应用于小型 VPS 和私人服务器,是一种比较简单的监控服务器的方法。

目前的版本迭代很快,开始写的时候(5月末)应该还是 v 1.x,到发稿时(7月初)已经是 v 3.9.x 版本了,几乎每天都有新版本发布。

  • 升级前

  • 升级后

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 dashdot ,选择第一个 mauricenino/dashdot,版本选择 latest

如果不是群晖,请用官方的脚本安装,需要挂载 4 个卷来获得更详细的系统信息,而在图像界面上无法挂载,直接跳过就好了,最终显示的是容器的系统信息

  • 挂载 /etc/os-release:/etc/os-release:ro 是为了让Dashdot 显示主机的操作系统版本,而不是 docker 容器(在 Alpine Linux 上运行)的操作系统。如果您无法使用此挂载,则可以传递带有 DASHDOT_OVERRIDE_OS 标志的自定义操作系统。

  • 挂载 /proc/1/ns/net:/host_ns_net:ro 才能正确确定网络信息。如果您无法使用此挂载,则需要回退到 --net host,否则您将只能获取容器的网络统计信息而不是主机。

  • 挂载 /media:/mnt/host_media:ro/mnt:/mnt/host_mnt:ro 需要读取所有驱动器的使用统计信息。如果您的驱动器安装在其他地方,则需要使用以下格式传递该驱动器路径:-v /{path}:/mnt/host_{path}:ro

端口

本地端口不冲突就行,不确定的话可以用命令查一下

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
8002 3001

环境

环境变量是非必要的可选项,老苏就测试了温度

可变
DASHDOT_ENABLE_CPU_TEMPS 默认为 false,不显示温度,需改设为 true
DASHDOT_OVERRIDE_OS 用于显示自定义的操作系统

官方提供了参数说明,想了解的可以去看文档:https://getdashdot.com/docs/config

常规设置

记得勾选 使用高权限执行容器

命令行运行

如果你熟悉命令行,可能用 docker cli 会更快捷

需要 --privileged 标志来正确确定内存和存储信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 运行容器(同图像界面安装)
docker run -d \
--restart unless-stopped \
--privileged \
--name dashdot \
-p 8002:3001 \
mauricenino/dashdot:latest

# 运行容器(可以准确显示网络)
docker run -d \
--restart unless-stopped \
--privileged \
--name dashdot \
-p 8002:3001 \
-v /proc/1/ns/net:/mnt/host_ns_net:ro \
-e DASHDOT_ENABLE_CPU_TEMPS=true \
-e DASHDOT_OVERRIDE_OS=synology \
mauricenino/dashdot:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: "3"
services:
dozzle:
container_name: dashdot
image: mauricenino/dashdot:latest
ports:
- '8002:3001'
environment:
- DASHDOT_ENABLE_CPU_TEMPS=true
- DASHDOT_OVERRIDE_OS=synology
restart: unless-stopped
privileged: true
volumes:
- /proc/1/ns/net:/mnt/host_ns_net:ro

然后执行下面的命令,在 portainer 中执行也是可以的

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 dashdot 
mkdir -p /volume2/docker/dashdot

# 进入 dashdot 目录
cd /volume2/docker/dashdot

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8002 就能看到主界面,第一眼是不是有点惊艳?

这是加了温度显示的,但实际上 v 1.x 并没有获取到值,最新版没问题

退出 Dark Mode

硬件信息在日志里都有

参考文档

MauriceNino/dashdot: A simple, modern server dashboard, primarily used by smaller private servers
地址:https://github.com/MauriceNino/dashdot

Home | dash.
地址:https://getdashdot.com/

Installation | dash.
地址:https://getdashdot.com/docs/install