docker: 定时检查docker container的运行状态并发邮件报警

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker: 定时检查docker container的运行状态并发邮件报警相关的知识,希望对你有一定的参考价值。

首先创建一个发送邮件的bash脚本 - send_mail.sh:

#!/bin/bash

curl -s --user api:key-xxxxxxxxxxxxx     https://api.mailgun.net/v3/xxxxxxx/messages \\
    -F from=Support <[email protected]>     -F to=xxx <[email protected]>     -F subject="$mail_subject"     -F text="$mail_text"

这里的发送邮件用的是mailgun的服务,可以自行替换成其它邮件提供商。

然后创建一个检查docker状态的脚本 - check_docker_status.sh:

!/bin/bash

export mail_subject="docker运行状态异常!!"
now=`date +%Y-%m-%d#%H:%M:%S`
export mail_text="docker被发现于$now停止运行"

docker ps | grep 你的docker container id | awk { if (!(/Up/)) { system("/home/xxx/send_mail.sh") }}

然后记得将send_mail.sh和check_docker_status.sh的脚本添加可执行属性。

最后添加到crontab中:

crontab -e

00 * * * * /home/xxx/check_docker_status.sh

这样每个小时0分的时候系统都会检查docker状态,一旦不处于Up的状态,就会发送一份邮件到指定邮箱。

Done

以上是关于docker: 定时检查docker container的运行状态并发邮件报警的主要内容,如果未能解决你的问题,请参考以下文章

Docker入门之docker-compose

Docker介绍

docker stats

使用 docker-compose 设置 Kafka

docker 定时清理docker容器日志

Docker容器技术介绍