ctop – 类似 Top 的 Docker 容器监控界面

linuxoperating systemopen source更新于 2026/1/29 6:52:17

如果您管理多个 Docker 容器,那么跟踪它们的资源利用率、网络连接和整体运行状况可能非常困难。幸运的是,有一款名为 ctop 的工具可以帮您解决这一难题。ctop 是一个类似 Top 的 Docker 容器实时监控界面。它以直观的视觉方式呈现容器指标,包括 CPU、内存、网络和磁盘使用情况。

在这篇博文中,我们将深入了解 ctop、它的功能以及如何有效地使用它。

什么是 ctop?

ctop 是一个命令行工具,它提供类似 Top 的 Docker 容器监控界面。它提供所有正在运行的容器的概览,显示实时 CPU 和内存使用情况、容器名称、镜像和 ID。 ctop 还允许您根据不同的条件(例如 CPU 使用率或容器名称)对容器列表进行排序和筛选。

安装 ctop

ctop 是一款开源工具,可以安装在 Linux、macOS 和 Windows 上。您可以从 GitHub 仓库下载最新版本的 ctop:https://github.com/bcicen/ctop/releases。

要在 Linux 上安装 ctop,请按照以下步骤操作 -

  • 从 GitHub 发布页面下载适用于 Linux 的 ctop 二进制文件 -

$ wget https://github.com/bcicen/ctop/releases/download/v0.7.6/ctop-0.7.6-linux-amd64 -O ctop
  • 使二进制文件可执行 -

$ chmod +x ctop
  • 将二进制文件移动到你的 $PATH −

$ sudo mv ctop /usr/local/bin/
  • 运行以下命令验证 ctop 是否已正确安装 −

$ ctop -v

你应该会在控制台上看到 ctop 的版本号。

使用 ctop

ctop 是一个在终端中运行的命令行工具。启动 ctop 后,你将看到 Docker 容器的实时视图及其资源利用率指标。你可以按各种条件对容器进行排序,例如 CPU 使用率、内存使用率、网络流量等。

以下是使用默认设置运行 ctop 的示例 −

$ ctop

这将显示您的 Docker 容器的实时视图,并按其 CPU 使用率排序。您可以使用箭头键在容器之间导航并查看其指标。

要按其他条件对容器进行排序,请按相应的快捷键 -

  • m - 按内存使用率排序

  • n - 按网络流量排序

  • i - 按容器 ID 排序

  • s - 按容器状态排序

  • p - 按容器 PID 排序

  • c - 按容器 CPU 使用率排序(默认)

您还可以使用过滤器根据特定条件缩小容器列表的范围。例如,您可以按名称或标签过滤容器 -

$ ctop -f name=web

这将仅显示名称包含"web"的容器。同样,您可以按标签过滤容器 -

$ ctop -f label=com.example.app=frontend

这将仅显示标签为"com.example.app"且值为"frontend"的容器。

ctop 还提供每个容器的详细信息,包括其资源利用率指标、正在运行的进程和环境变量。要查看容器详细信息,请使用箭头键突出显示容器,然后按 Enter。

以下是查看容器详细信息的示例 -

  • 首先,在终端中启动 ctop -

$ ctop
  • ctop 将显示正在运行的 Docker 容器列表及其资源利用率指标。

NAME           CPU%    MEM USAGE / LIMIT     MEM%    NET I/O            BLOCK I/O   PIDS
my-container   1.13%   66.26MiB / 3.697GiB   1.76%   14.57kB / 2.03kB   6.97MB / 16.4MB   1/1
  • 使用箭头键突出显示您要检查的容器。​​

my-container  1/1  2.13%  66.26MiB / 3.697GiB  1.76%  14.57kB / 2.03kB  6.97MB / 16.4MB running
  • 按 Enter 键查看所选容器的详细信息。

Container ID: 28c54bfc07f4
Image: alpine:latest
Command: /bin/sh -c sleep 3600
Status: running for 2 hours
Created: 1 day ago
IP: 172.17.0.3
Networks: bridge

CPU:
  Usage: 0.0%
  System: 33s
  User: 1m50s

Memory:
  Usage: 66.26MiB / 3.697GiB
  Percentage: 1.76%

Network:
  Input: 14.57kB
  Output: 2.03kB

Block IO:
  Input: 6.97MB
  Output: 16.4MB

Processes:
  Running: 1
  Total: 1
  • 使用箭头键浏览详细的容器信息,按 Esc 退出详细视图并返回到 ctop 主界面。

NAME           CPU%    MEM USAGE / LIMIT     MEM%    NET I/O       BLOCK I/O   PIDS
my-container   1.13%   66.26MiB / 3.697GiB   1.76%   14.57kB / 2.03kB   6.97MB / 16.4MB   1/1

自定义 ctop

ctop 提供了多种选项来自定义工具的界面和行为。以下是一些示例 -

  • 按资源使用情况对容器进行排序 - 默认情况下,ctop 按名称对容器进行排序。您可以通过按相应的键来更改排序顺序(例如,按"p"键按 CPU 使用率排序,按"m"键按内存使用率排序)。

  • 过滤容器 - 您可以通过按"f"键并输入过滤条件,按名称或 ID 过滤容器。

  • 更改配色方案 - ctop 提供了多种配色方案,您可以通过按"t"键切换。您还可以通过在 ~/.config/ctop/colors.toml 中创建配置文件来自定义配色方案。

  • 设置资源限制 - 您可以通过按"l"键并输入限制值来设置 CPU、内存和块 I/O 的资源限制。

要查看选项和按键绑定的完整列表,请按"?"键。

值得考虑的 ctop 高级功能

虽然 ctop 是一个简单易用的工具,但它也提供了一些高级功能,可帮助您更好地监控容器。

  • 排序和过滤−ctop 允许您根据不同的条件(例如 CPU 使用率或容器名称)对容器列表进行排序和过滤。这可以帮助您快速识别资源使用率最高的容器或遇到问题的容器。您可以按相应的键对容器列表进行排序("c"表示 CPU 使用率,"m"表示内存使用率,等等),或者按容器名称进行过滤(按"/"键后跟容器名称)。名称。

  • 自定义界面−ctop 允许您通过选择要显示的列及其显示方式来自定义界面。这可以帮助您根据特定需求和偏好定制界面。您可以按"f"键并选择所需的列来自定义显示的列。

  • 键盘快捷键− ctop 支持许多常见任务的键盘快捷键,例如对容器列表进行排序、按名称过滤以及查看容器日志。这可以帮助您快速浏览界面并更高效地执行任务。您可以按"?"键访问可用的键盘快捷键列表。

总的来说,ctop 是一款功能强大的工具,可以实时监控 Docker 容器。其简洁而功能丰富的界面使其成为任何需要管理和监控容器用户的绝佳选择。

结论

ctop 是一款功能强大的工具,可以实时监控和管理 Docker 容器。其类似于 Top 的界面和详细的容器指标,可以轻松识别和排除容器问题,优化资源利用率,并确保 Docker 基础架构的平稳运行。凭借其可自定义的界面ctop 是一款功能多样的工具,拥有丰富的容器过滤和排序选项,可以根据您的特定需求进行定制。无论您是 Docker 资深用户,还是容器化新手,ctop 都是您工具箱中的必备工具。


相关文章


有用资源