瀏覽代碼

Add container monitoring script

evgeniy 1 年之前
父節點
當前提交
f7db6040b1
共有 1 個文件被更改,包括 37 次插入0 次删除
  1. 37 0
      compose/bin/container-monitoring

+ 37 - 0
compose/bin/container-monitoring

@@ -0,0 +1,37 @@
+#!/bin/bash
+
+stty -echo
+
+INTERVAL=3
+
+trap 'stty echo; exit' INT EXIT
+
+while true; do
+    DOCKER_STATS=$(docker stats --no-stream --format "{{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}")
+
+    clear
+
+    if [[ ! -z "$DOCKER_STATS" ]]; then
+        echo "+----------------------------------------------------+------------+-----------------+-----------------+"
+        printf "| %-50s | %-10s | %-15s | %-15s |\n" "Name" "CPU %" "Memory Usage" "Memory Limit"
+        echo "+----------------------------------------------------+------------+-----------------+-----------------+"
+
+        while IFS= read -r line; do
+            line=$(echo "$line" | tr '/' ' ')
+
+            container_info=($line)
+            container_name=${container_info[0]}
+            container_stats=(${container_info[@]:1})
+
+            printf "| %-50s | %-10s | %-15s | %-15s |\n" "$container_name" "${container_stats[0]}" "${container_stats[1]}" "${container_stats[2]}"
+        done <<< "$DOCKER_STATS"
+
+        echo "+----------------------------------------------------+------------+-----------------+-----------------+"
+    else
+        echo "No active containers found"
+        break
+    fi
+
+    sleep $INTERVAL
+done
+