Docker 容器健康检查指的是在 Dockerfile 中使用 HEALTHCHECK
指令对容器的运行状态进行检查,
并在 docker ps
的 STATUS 栏显示 healthy/unhealthy。
HEALTHCHECK
指令有两种格式:
HEALTHCHECK [OPTIONS] CMD command
(通过在容器内运行命令检查容器的健康状态)HEALTHCHECK NONE
(禁用从基础镜像中继承任何健康检查)
HEALTHCHECK
指令告诉 Docker 如何测试一个容器,以检查它是否仍在工作。
这可以检测到一些情况,例如 web 服务器陷入无限循环,无法处理新的连接,即使服务器进程仍在运行。
当容器指定了健康检查时,除了正常状态外,它还具有健康状态。此状态初始为 starting
。
只要健康检查通过,它就会恢复到 healthy
(无论它以前处于什么状态)。在连续失败一定次数后,它就会变得 unhealthy
。
CMD
之前可以出现的选项有:
- –interval=DURATION(默认:30s)
- –timeout=DURATION(默认&#