← 全部文章

技术与生活 / 一篇记录

一直在重启,并不叫自动恢复成功

自动重启有助于进程退出后的恢复,但反复崩溃需要查明根因。

重启策略能重新拉起退出进程,却无法修复错误密码、缺失文件或不兼容镜像。反复失败还会造成日志增长和资源抖动,影响同机其他服务。

从一个例子看起

容器名与镜像名仅作示例;操作前先确认目标对象,不直接对不明数据执行清理。

docker inspect --format '{{.RestartCount}}' demo-app

连续观察重启计数是否增长,并查看上一次退出原因。

排查时再往前走一步

检查退出状态、OOM 标记与最近几轮启动日志。修复根因后继续观察一段时间,确认重启计数不再增长,而不是只截取某一瞬间的 Up 状态。

部分任务本来就会正常退出,不能把它们与常驻服务使用同一预期。设置重启策略前,先确定容器是一次性作业还是长期服务,否则正常结束也可能变成无意义重复执行。

不要把不断重启误认为服务保持可用。

参考:Docker 文档。

搜索文章

输入关键词,找回一篇记录。