体验docker容器的健康检查功能( 二 )

  • 前面在创建容器时的health-retries参数的值是10 , 意味着连续10次返回码非200才会被判定为不健康 , 因此 , 在控制台连续十次输出之前 , 执行docker ps命令观察容器状态 , 应该还是 , 超过十次输出之后 , 再去看容器状态 , 就变成了:
(base) zhaoqindeMacBook-Pro:~ zhaoqin$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES070e56cc99f2 bolingcavalry/dockerhealthcheck:0.0.1-SNAPSHOT "java -Xms1g -Xmx1g …" 18 minutes ago Up 18 minutes (unhealthy) 0.0.0.0:8080->8080/tcp healthcheck
  • 恢复健康状态:在浏览器输入 , 这样接口的返回码又变成了200 , 观察控制台 , 只要"step probe return success"输出一次 , 容器健康状态就恢复为healthy了;
观察容器事件
  1. 在控制台输入 , 即可观察宿主机上所有的容器健康状态事件;
  2. 按照上面的操作 , 在浏览器输入或者 , 将容器的健康状态转变几次 , 可以观察到容器事件变化:
(base) zhaoqindeMacBook-Pro:~ zhaoqin$ docker events --filter event=health_status2019-10-20T12:19:18.349588676+08:00 container health_status: unhealthy 2d538f8752ae1e94ce23f34b7fb71c8f2ea3a075df82943ffdbe62c49ad4d6c8 (image=bolingcavalry/dockerhealthcheck:0.0.1-SNAPSHOT, name=healthcheck)2019-10-20T12:20:19.030857534+08:00 container health_status: healthy 2d538f8752ae1e94ce23f34b7fb71c8f2ea3a075df82943ffdbe62c49ad4d6c8 (image=bolingcavalry/dockerhealthcheck:0.0.1-SNAPSHOT, name=healthcheck)至此 , docker容器健康体验完毕 , 我们已经对此功能有了基本认识 , 接下来实战中 , 我们会尝试让自己的应用容器支持健康检查功能;




推荐阅读