25 lines
796 B
Bash
25 lines
796 B
Bash
|
#!/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
|