Press "Enter" to skip to content

单节点容器部署,健康检查失败自动重启

单节点部署Docker环境,健康检查只是会给容器加个不健康的状态,并不会尝试重新创建容器。

如果你的docker在swarm模式下,他会尝试重新创建容器,可是单节点不行。

如果你想要能够容器在不健康情况下自动重启,又想使用单节点状态怎么办呢?

我写了个简单的脚本,他会监听docker的健康事件,然后将不健康的容器进行重启。

项目源码地址为:

https://github.com/caicaicai/autoheal

镜像我已经传到中央仓库了,你本地如果执行想部署,不需要二次开发的话,只需要部署一个简单的容器就行了。

docker run -d \
    --name autoheal \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
   xiaocaicai/autoheal

镜像仓库地址:https://hub.docker.com/r/xiaocaicai/autoheal

参考资料:https://codeblog.dotsandbrackets.com/docker-health-check/

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注