From 39f30c64a6aa4079864f6532f0dca3c709404229 Mon Sep 17 00:00:00 2001 From: lc Date: Mon, 17 Mar 2025 00:44:32 +0000 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20restart-docker.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- restart-docker.sh | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 restart-docker.sh diff --git a/restart-docker.sh b/restart-docker.sh new file mode 100644 index 0000000..6128542 --- /dev/null +++ b/restart-docker.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +# 定义容器名称 +CONTAINER_A="container_a" +CONTAINER_B="container_b" + +# 获取容器 A 的初始启动时间 +INITIAL_START_TIME=$(docker inspect --format='{{.State.StartedAt}}' $CONTAINER_A) + +# 无限循环,持续监控容器 A 的状态 +while true; do + # 获取容器 A 的当前启动时间 + CURRENT_START_TIME=$(docker inspect --format='{{.State.StartedAt}}' $CONTAINER_A) + + # 比较初始启动时间和当前启动时间 + if [[ "$CURRENT_START_TIME" != "$INITIAL_START_TIME" ]]; then + echo "容器 $CONTAINER_A 已重启,正在重启容器 $CONTAINER_B..." + docker restart $CONTAINER_B + # 更新初始启动时间为当前启动时间 + INITIAL_START_TIME=$CURRENT_START_TIME + fi + + # 每隔 5 秒检查一次 + sleep 5 +done \ No newline at end of file