小知识:如何监控docker容器运行状态 shell 脚本

场景

公司项目部署在docker中,由于未知原因容器偶尔会停止,需要写一个脚本监控 容器运行状态,如果容器停止了,就再启动该容器

shell脚本

?
1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash
# 传入容器名称
containerName=$1
currTime=`date +”%Y-%m-%d %H:%M:%S”`
# 查看进程是否存在
exist=`docker inspect –format {{.State.Running}} ${containerName}`
if [ “${exist}” != “true” ]; then
docker start ${containerName}
# 记录
echo “${currTime} 重启docker容器,容器名称:${containerName}” >> /mnt/xvde1/ms_ctynyd/scripts/wbwf_monitor.log
fi

定时任务crontab

crontab -e 进行 linux 定时任务的编辑

?
1
2
3
4
# 监控docker 8081 容器
*/1 * * * * sh /mnt/xvde1/ms_ctynyd/scripts/wbwf_monitor.sh server_wbwf_wbwf-app_1
# 监控 docker 7081 容器
*/1 * * * * sh /mnt/xvde1/ms_ctynyd/scripts/wbwf_monitor.sh server_hb_hb-test-app_1

补充:shell脚本判断某服务是否运行

shell脚本判断某服务是否开启

脚本如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/bash
#检查服务状态,是否安装
read -p “请输入要检测的服务:” SERVICE
netstat -anp | grep $SERVICE &> /dev/null
if [ $? -eq 0 ]
then
echo “$SERVICE服务已经启动!”
else
rpm -q $SERVICE &> /dev/null
if [ $? -eq 0 ]
then
echo “$SERVICE服务已安装,正在启动….”
service $SERVICE start
else
echo “该服务未安装!”
fi
fi

结果如下:

%小知识:如何监控docker容器运行状态 shell 脚本-猿站网-插图

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。

原文链接:https://blog.csdn.net/zaige66/article/details/94014703

声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Linux使用VIM编辑器的方法

2023-3-22 23:56:31

建站知识

小知识:nginx安装以及配置的详细过程记录

2023-3-23 1:19:55

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索