Docker容器原生健康检查机制详解 (docker常用命令)

教程大全 2025-07-15 23:48:14 浏览

Docker容器原生健康检查机制详解

2023-05-09 07:34:25本文介绍Docker中两种原生的健康检查方式,使用起来非常方便。目前主流的容器编排框架也都自带了健康健康检查功能,这种情况下不需要使用Docker原生的健康检查方式。

为什么需要健康检查机制?

健康检查机制是用来检查服务的可用性,当服务不可用时及时重启以恢复可用性。之前的文章《KuberNETes中配置LivenessProbe、readinessProbe和startupProbe》讲解了Kubernetes中的各种健康检查类型和配置方法,本篇文章讲解一下docker容器的健康检查机制。

看过上文提到的那篇文章的同学型相信肯定能理解为什么需要对服务本身做健康检查。就以docker为例再解释一下,Docker Daemon用来运行和管理容器,本身会监控容器中PID为1的进程,其实在实际场景中仅监控PID为1的进程是不够的。例如当容器中的服产生死锁的情况,这时候服务虽然不能处理用户请求,但是PID为1的进程依然是运行状态。

Docker健康检查机制

Docker健康检查有两种方式:

在Dockerfile中使用HEAltHCHECK命令配置健康检查策略

在Dockerfile中使用HEALTHCHECK声明健康检查策略, 容器启动后就会自动进行健康检查。

使用示例如下:

from elasticsearch:latestHEALTHCHECK --interval=5s --timeout=2s --retries=3 \CMD curl --silent --fail localhost:9200/_cluster/health || exit 1

在Dockerfile中HEALTHCHECK最好只写一个,如果写了多个,只有最后一个会有效。

CMD命令返回值有三种,如下

执行docker run后容器初始状态为starting,等待配置的interval时间后,开始执行健康检查。如果单次检查返回值不是0或者检查时间超过了timeout,本次检查被认为失败。如果健康检查连续失败次数超过了retries,状态就会变为unhealthy, 健康检查结果一旦成功,容器就会被置为healthy状态。

在启动容器时(docker run 命令)配置健康检查策略

示例如下:

$ docker run --rm -d \--name=es \--health-cmd="curl --silent --fail localhost:9200/_cluster/health || exit 1" \--health-interval=5s \--health-timeout=2s \--health-retries=3 \elasticsearch:latest

参数代表的意思和第一种方式中的相同,健康检查命令的输出存储在健康状态里,可以用docker inspect命令查看。

小结

本文介绍了Docker中两种原生的健康检查方式,使用起来非常方便。目前主流的容器编排框架也都自带了健康健康检查功能,这种情况下不需要使用Docker原生的健康检查方式。


从安庆要带小狗坐飞机到贵阳需要怎么做

从安庆要带小狗坐飞机到贵阳是可以的携带宠物狗的;中国民航规定,航空公司接受运输的小动物是指家庭驯养的狗、猫、鸟或其它玩赏宠物,野生动物和具有形体怪异或者易于伤人等特性的动物如蛇等,不能作为行李运输,但可以作为货物运输。 此外,一般航空公司都规定不托运在怀孕期、哺乳期和分娩48小时内的动物。 具体流程如下:第1步 做好检疫工作,准备有效证件航空公司会要求旅客提供县级以上卫生检疫部门出具的动物检疫证明(有效的健康证明及疫苗注射证明),需要注意的是,检疫证明有效期最长为7天,所以乘机日期必须在动物检疫证明的有效期内;第2步 申请舱位旅客购票前,需要确认所乘航班是否允许带宠物,也就是是否有活体动物货舱,航空公司对托运猫狗等宠物有数量限制,旅客要为自己的宠物订到一个有氧舱位,最好提前3天以上向航空公司申请;如果航班起飞前,航空公司将飞机调整为不能托运小动物的机型,那么乘客只能放弃托运或是改乘其他航班。 需要注意,旅程中不转机,宠物被误送往异地的可能性就会小得多;第3步 买航空箱一个结实、正规的航空箱,是你的宠物在飞机上感到舒适安全的保障,一般可在宠物店买到,几十到几百元不等;航空箱必须符合以下要求:1、能防止动物破坏、逃出和伸出容器;2、保证空气流通;3、能防止粪便渗漏;因此一个好的航空箱为钢筋结构,底盘和四周应用铁皮围起来,只在顶部留下通风口,开口处可用铅丝扎实。 同时,要用垫子绑在底盘下,以免宠物大小便泄露污染他人货物。 旅客可以在航空箱的上方绑上固定物,以免其他物品挤压容器;第4步 登机前的准备长途旅行前,宠物需要打好所有疫苗才安全。 若旅行时间较长,可咨询兽医,看是否需要给宠物服用镇定剂。 在寒冷的冬季,可给宠物穿上保暖衣物以免受冻。 宠物至少在登机前3小时禁食,并做好排尿工作。 坐飞机时,宠物易感口渴,旅客需要在航空箱里固定好够大的饮水器(还可放上部分食物)。 如果宠物不会使用,最好提前训练;乘机当天,旅客需要提前2小时到达机场办理手续,具体地点请咨询服务人员。 尽量不要让宠物过X光机,可让安检人员使用对人用的探测器检查。 另外,如果搭乘的飞机晚点,你可以要求货运处迟些将宠物送进货舱;第5步 接机如果宠物走的是行李托运渠道,那么人到宠物到;如果走的是货物运输渠道,也就是主人和宠物不在一个飞机,旅客需要尽早去“接机”。 宠物在“小黑屋”里度过了孤独、不安的几个小时,所以主人在接到爱宠时一定要检查它的状态,并好好安抚它。

冰箱可以平躺着运输吗?

冰箱在一般情况下不要去平躺着运输,因为冰箱内有一个减震弹簧,平躺运输容易导致其移位,移位后使得压缩机电机无法运行。

冰箱的背部是其压缩机所在的地方,倾斜或平放很容易导致压缩机或电动机内部的润滑油流到制冷系统内的循环中,会影响冰箱制冷系统的运行。

正确的运输方式

1、在运输冰箱前,要将冰箱提前断电,清理干净冰箱,把冰箱门锁上后绑起来,确保冰箱门不会打开。

2、其次将冰箱放到一个合适的容器内,如纸箱,避免冰箱发生磕碰损坏。 在运输过程中保持平稳,轻拿轻放,避免损坏冰箱。

3、在运输完成后,不能立即通电使用,要以直立状态静置24小时,再通电使用。

docker常用命令

为什么穿越火线安装时应用程序发生失败

一定是有恶意软件,用清理助手清理,就行!

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐