#!/bin/bash
# 定義要監控的容器名稱
CONTAINER_NAME="容器名稱"
while true;do
# 檢查容器是否存在
if ! docker ps -a --format '{{.Names}}' | grep -q "^${CONTAINER_NAME}$"; then
echo "Error: Container ${CONTAINER_NAME} does not exist."
fi
# 獲取容器的內存占用率
MEMORY_USAGE=$(docker stats --no-stream --format "{{.MemPerc}}" ${CONTAINER_NAME} | tr -d '%')
# 輸出內存占用率
echo "Container ${CONTAINER_NAME} memory usage: ${MEMORY_USAGE}%"
# 判斷內存占用率是否超過閾值(例如80%)
THRESHOLD=80
if (( $(echo "${MEMORY_USAGE} > ${THRESHOLD}" | bc -l) )); then
echo "Warning: Memory usage of container ${CONTAINER_NAME} exceeds ${THRESHOLD}%."
# 這里可以添加額外的操作,例如重啟容器或發送警報