网站搜索

使用 Ctop 监控 Docker 容器资源


您是否一直在寻找一个类似于 top 的容器指标和监控界面?Ctop 是一个命令行工具,旨在提供系统中运行的容器的实时指标的简明概览。该命令行工具内置支持 Docker 和 runC 容器引擎。

Ctop 的特点:

  • 轻量级:它资源占用低,适合在任何硬件上运行。
  • 实时监控: 它将为您提供容器在CPU、内存、网络和存储使用情况的实时监控信息。
  • 直观且互动的界面: 拥有易于导航和使用的界面,并可通过键盘快捷键进行简单筛选。
  • 容器管理支持: 您可以轻松地从界面启动、重启、停止容器,并进行容器检查。
  • 优秀的 资源可视化:通过图表和图形可视化,可以轻松监控资源使用趋势。
  • 跨平台支持: Ctop 可以安装在 macOS、Windows 和 Linux 上。

在 Linux/macOS 上安装 ctop

Ctop 是用 Go 编写的,并以二进制文件形式分发,你可以从 Github 上快速下载并安装它。获取适用于你平台的最新版本,并使用 wget 或 curl 命令下载。

在 Linux 上安装 ctop

对于 Linux 系统,我们将下载二进制文件,解压并放入系统 PATH 中。

curl -s https://api.github.com/repos/bcicen/ctop/releases/latest | grep browser_download_url|grep linux-amd64 | cut -d '"' -f 4 | wget -i -
chmod +x ctop-*-linux-amd64
sudo mv ctop-*-linux-amd64 /usr/local/bin/ctop

通过检查版本来确认安装。

$ ctop -v
ctop version 0.7.7, build 11a1cb1 go1.18

在 macOS 上安装 ctop

如果你使用的是 OS X,可以通过 brew 安装 ctop,或者从 Github 下载最新的预编译二进制文件。

使用 brew 安装 ctop:

brew install ctop

手动下载软件包类似如下。

curl -s https://api.github.com/repos/bcicen/ctop/releases/latest | grep browser_download_url|grep darwin-amd64 | cut -d '"' -f 4 | wget -i -
chmod +x ctop-*-darwin-amd64
sudo mv ctop-*-darwin-amd64 /usr/local/bin/ctop

确认它在工作。

$ ctop  --help
 Usage of ctop:
   -a    show active containers only
   -connector string
         container connector to use (default "docker")
   -f string
         filter containers
   -h    display this help dialog
   -i    invert default colors
   -r    reverse container sort order
   -s string
         select container sort field
   -scale-cpu
         show cpu as % of system total
   -v    output version information and exit

启动和使用 ctop

使用 ctop 很简单,只需运行命令 ctop,你就可以实时看到容器的指标显示。

$ ctop

示例输出

Ctop 快捷键

钥匙动作
<输入>打开容器菜单
一切换显示所有(运行中和未运行)容器
f筛选显示的容器(打开时按 esc 可清除)
H切换 ctop 头部
h打开帮助对话框
s选择容器排序字段
r反向容器排序顺序
哦打开单一视图
l查看容器日志(打开时按 t 切换时间戳)
S将当前配置保存到文件
q退出 ctop

在 Docker 容器中运行 ctop

如果你非常喜欢容器,可以在 Docker 容器中运行 ctop。但首先请按照下面的指南在你的系统中安装 Docker。

  • 如何在 Linux 上安装 Docker CE

一旦 Docker 安装并运行,运行以下命令启动 ctop 容器:

docker run --rm -ti \
  --name=ctop \
  -v /var/run/docker.sock:/var/run/docker.sock \
  quay.io/vektorlab/ctop:latest

其他有趣的容器文章。

  • 使用 Stacer 优化 Linux 系统
  • 在 Ubuntu 上部署和使用 Dokku
  • 在 Ubuntu/Debian 上安装 Minikube
  • 在 Linux Mint 上安装 Docker 和 Docker Compose
  • 在 Windows Server 2019 上运行 Docker 容器
  • 在 Ubuntu 上设置 3 节点 Kubernetes 集群