问题:systemctl stop docker.service 隔一段时间后docker又跑起来
解决方法:
1、网上查询了有人遇到同样的问题,贴出解决方法
分析原因:
启动 docker 的时候,会连带启动一个定时器任务docker-cleanup.timer,这个 timer 任务会每隔 1 小时运行 docker-cleanup.service这个任务来清理 dead 状态的容器.
关闭 docker 的时候,docker-cleanup.timer 这个任务不会被连带关闭,它依然每小时唤 docker-cleanup.service 一次,这个清理任务又依赖于docker.service服务,又继续把 docker 唤醒,所以最后造成每隔一小时 docker 的诡异重启.
解决方案:
RedHat 里面的附件已经给出了方法,把 docker-cleanup.service 和 BindsTo=docker.service 里面的Requires=docker.service换成BindsTo=docker.service 即可,这样关闭 docker 的时候,会连带关闭这两个服务,同理如果关闭docker-cleanup.timer 同样会关闭docker.service
2、同时停掉相关服务
systemctl stop docker.service
systemctl stop docker-cleanup.service
systemctl stop docker-cleanup.timer
本文解析了Docker服务在使用systemctl停止后仍每隔一小时自动重启的原因,并提供了详细的解决方案。问题根源在于docker-cleanup.timer定时器未能随Docker服务一同关闭,导致周期性重启。文章指导如何调整服务依赖,确保Docker及相关组件彻底停止。
1187

被折叠的 条评论
为什么被折叠?



