测验:健康检查与重启策略
当容器变成unhealthy时,单独 Docker 会发生什么?
- Docker自动重启容器
- Docker删除容器
- 只是状态变为不健康,没有重启。
- 从注册表取回图像
为什么它给出--start-period?
- 延长健康检查测试周期
- 增加一项测试的超时时间
- 防止需要时间启动的应用程序由于初始故障而变得不健康
- 在确定失败之前增加重试次数
区分活跃性和就绪性的最合适的理由是什么?
- 我想将两个探针的配置文件分开。
- 减少整体检查次数
- 我想分割两个测试的日志。
- 因为通过重新启动来响应临时依赖延迟会使情况变得更糟。
always和unless-stopped有什么区别?
- 始终仅在退出代码为 0 时重新启动。
- 重新启动守护进程后是否重新启动已被人显式停止的容器。
- 始终仅重新启动最多 5 次
- 没有区别
仅使用 Compose 的depends_on: [db]能保证什么?
- 仅 db 容器的启动顺序优先。
- 等待数据库准备好接收连接
- 等待DB的健康检查通过
- 如果数据库挂掉,应用程序也会重新启动。
如果我们让/healthz总是返回 200 万,会有什么问题?
- 健康反应变得越来越缓慢
- 开放端点会产生安全漏洞。
- 失败会被错过,因为它们除了进程生存之外不检查任何其他内容
- 容器重启策略被忽略