首先我们来写一个脚本root@server:~# cat docker_monitor.sh
#!/bin/bash
#监控容器的运行状态
#容器名称 传入参数
containerName=$1
#当前时间
now=`date +"%Y-%m-%d %H:%M:%S"`# 查看进程是否存在
exist=`docker inspect --format '{{.State.Running}}' ${containerName}`
if [ "${exist}" != "true" ]; thendocker start ${containerName}#记录日志echo "${now} 重启docker容器,容器名称:${containerName}" >> /opt/docker_log/docker_monitor.log
fi
然后我们放到定时器cron里: 每分钟检查一次
crontab -e
*/1 * * * * sh /root/docker_monitor.sh e96393144986
*/1 * * * * sh /root/docker_monitor.sh 5942e21ab085