2018-04-03 12:52:28 +08:00
|
|
|
|
cTop:用于容器监控的命令行工具
|
2018-03-31 21:37:57 +08:00
|
|
|
|
======
|
2018-04-03 12:52:28 +08:00
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
最近 Linux 容器很火,我们中的大多数人甚至已经在使用它,同时一些人也开始学习它。
|
|
|
|
|
|
|
|
|
|
我们已经介绍了有名的 GUI(用户图形界面) 工具如 Portainer 和 Rancher 。这将会有助于我们通过 GUI 管理容器。
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
这篇指南将会通过 cTop 命令帮助我们理解和监控 Linux 容器。它是一个类似 `top` 命令的命令行工具。
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
|
|
|
|
### 什么是 cTop
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
[ctop][1] 为多个容器提供了一个简洁凝练的实时指标概览。它是一个类 `top` 的针对容器指标的界面。
|
|
|
|
|
|
|
|
|
|
它展示了容器指标比如 CPU 利用率、内存利用率、磁盘 I/O 读写、进程 ID(PID)和网络发送(TX - 从此服务器发送)以及接受(RX - 此服务器接受)。
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
`ctop` 带有对 Docker 和 runc 的内建支持;对其他容器和集群系统的连接计划在未来版本中推出。
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
|
|
|
|
它不需要任何参数并且默认使用 Docker 主机变量。
|
|
|
|
|
|
|
|
|
|
**建议阅读:**
|
2018-04-03 12:52:28 +08:00
|
|
|
|
|
|
|
|
|
- [Portainer – 一个简单的 Docker 图形管理界面][2]
|
|
|
|
|
- [Rancher – 一个完整的生产环境容器管理平台][3]
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
|
|
|
|
### 如何安装 cTop
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
开发者提供了一个简单的 shell 脚本来帮助我们直接使用 `ctop`。我们要做的,只是在 `/bin` 目录下下载 `ctop` shell 文件来保证全局访问。最后给予 `ctop` 脚本文件执行权限。
|
|
|
|
|
|
|
|
|
|
在 `/usr/local/bin` 目录下下载 ctop shell 脚本。
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
$ sudo wget https://github.com/bcicen/ctop/releases/download/v0.7/ctop-0.7-linux-amd64 -O /usr/local/bin/ctop
|
|
|
|
|
```
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
对 `ctop` shell 脚本设置执行权限。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
```
|
|
|
|
|
$ sudo chmod +x /usr/local/bin/ctop
|
|
|
|
|
```
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
另外你可以通过 docker 来安装和运行 `ctop`。在此之前先确保你已经安装过 docker。为了安装 docker,参考以下链接。
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
|
|
|
|
**建议阅读:**
|
2018-04-03 12:52:28 +08:00
|
|
|
|
|
|
|
|
|
- [如何在 Linux 上安装 Docker][4]
|
|
|
|
|
- [如何在 Linux 上玩转 Docker 镜像][5]
|
|
|
|
|
- [如何在 Linux 上玩转 Docker 容器][6]
|
|
|
|
|
- [如何在 Docker 容器中安装,运行应用][7]
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
```
|
|
|
|
|
$ docker run --rm -ti \
|
|
|
|
|
--name=ctop \
|
|
|
|
|
-v /var/run/docker.sock:/var/run/docker.sock \
|
|
|
|
|
quay.io/vektorlab/ctop:latest
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 如何使用 cTop
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
直接启动 `ctop` 程序而不用任何参数。默认它绑定的 `a` 键用来展示所有容器(运行的和没运行的)。
|
|
|
|
|
|
|
|
|
|
`ctop` 头部显示你的系统时间和容器的总数。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
```
|
|
|
|
|
$ ctop
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
你可能得到以下类似输出。
|
2018-04-03 12:52:28 +08:00
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][9]
|
|
|
|
|
|
|
|
|
|
### 如何管理容器
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
你可以使用 `ctop` 来管理容器。选择一个你想要管理的容器然后按下回车键,选择所需选项如 `start`、`stop`、`remove` 等。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][10]
|
|
|
|
|
|
|
|
|
|
### 如何给容器排序
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
默认 `ctop` 使用 `state` 字段来给容器排序。按下 `s` 键来按不同的方面给容器排序。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][11]
|
|
|
|
|
|
|
|
|
|
### 如何查看容器指标
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
如何你想要查看关于容器的更多细节和指标,只用选择你想要查看的相应容器然后按 `o` 键。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][12]
|
|
|
|
|
|
|
|
|
|
### 如何查看容器日志
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
选择你想要查看日志的相应容器然后按 `l` 键。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][13]
|
|
|
|
|
|
|
|
|
|
### 仅显示活动容器
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
使用 `-a` 选项运行 `ctop` 命令来仅显示活动容器
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][14]
|
|
|
|
|
|
|
|
|
|
### 打开帮助对话框
|
|
|
|
|
|
2018-04-03 12:52:28 +08:00
|
|
|
|
运行 `ctop`,只需按 `h` 键来打开帮助部分。
|
|
|
|
|
|
2018-03-31 21:37:57 +08:00
|
|
|
|
![][15]
|
|
|
|
|
|
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
via: https://www.2daygeek.com/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux/
|
|
|
|
|
|
|
|
|
|
作者:[2DAYGEEK][a]
|
|
|
|
|
译者:[kimii](https://github.com/kimii)
|
2018-04-03 12:52:28 +08:00
|
|
|
|
校对:[wxy](https://github.com/wxy)
|
2018-03-31 21:37:57 +08:00
|
|
|
|
|
|
|
|
|
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
|
|
|
|
|
|
|
|
|
[a]:https://www.2daygeek.com/author/2daygeek/
|
|
|
|
|
[1]:https://github.com/bcicen/ctop
|
|
|
|
|
[2]:https://www.2daygeek.com/portainer-a-simple-docker-management-gui/
|
|
|
|
|
[3]:https://www.2daygeek.com/rancher-a-complete-container-management-platform-for-production-environment/
|
|
|
|
|
[4]:https://www.2daygeek.com/install-docker-on-centos-rhel-fedora-ubuntu-debian-oracle-archi-scentific-linux-mint-opensuse/
|
|
|
|
|
[5]:https://www.2daygeek.com/list-search-pull-download-remove-docker-images-on-linux/
|
|
|
|
|
[6]:https://www.2daygeek.com/create-run-list-start-stop-attach-delete-interactive-daemonized-docker-containers-on-linux/
|
|
|
|
|
[7]:https://www.2daygeek.com/install-run-applications-inside-docker-containers/
|
|
|
|
|
[8]:data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7
|
|
|
|
|
[9]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-1.png
|
|
|
|
|
[10]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-2.png
|
|
|
|
|
[11]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-3.png
|
|
|
|
|
[12]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-4a.png
|
|
|
|
|
[13]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-7.png
|
|
|
|
|
[14]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-5.png
|
|
|
|
|
[15]:https://www.2daygeek.com/wp-content/uploads/2018/02/ctop-a-command-line-tool-for-container-monitoring-and-management-in-linux-6.png
|