ctop – 用於監控 Docker 容器的類 top 介面
如果您正在管理多個 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 都是您工具箱中必不可少的工具。