在 Docker 中安装 Glances

Glances 介绍

Dashy 中有很多 widgets 可以配置,其中比较实用的是资源监控。面板上展示 CPU 使用率,这对我没啥用 —— 我更关心是哪个程序导致了 CPU 高占用。但是这个功能所依赖的 Glances 软件,却非常实用。

Glances 类似于 top 命令,可以展示系统资源使用情况。但是,它更优秀:

  • 数据展示更全面、更人性化;
  • 可以展示每个容器的资源使用情况 —— 在这一点上,它胜过了 Portainer。Portainer 只能以图表形式展示一个容器的资源使用情况。
  • 可以用服务器模式启动。我们可以通过浏览器监控资源使用情况,很方便。

image-20240408112645115

Glances 比较轻量级,只会展示当前的资源情况,不会记录历史数据。而我需要的正是这种轻量级又全面的资源监控软件。

Docker 安装

为什么要用 Docker 安装?官方的首选方式是用 pip 安装:

1
pip install --user glances

这会破坏本地的 Python 环境,所以还是要 Docker 吧。

docker compose:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
services:
glances:
image: docker.io/nicolargo/glances:latest
container_name: glances
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
network_mode: bridge
ports:
- 61208-61209:61208-61209
restart: unless-stopped
environment:
- GLANCES_OPT=-w
- TZ=Asia/Shanghai
pid: host

之后浏览器访问 61208 端口。

参考