docker 运行容器时使用--restart 参数可以指定一个restart策略,来指定容器应该如何重启,或不应该重启,当容器启用restart策略时,将会载docker ps 显示up 或者restart 状态,当然也可以使用docker events命令生效命令中restatcel策略。

docker 支持的restart策略

+ no - 容器退出时不要自动重启,这个是默认值

+on-failure 在容器非正常退出时(退出状态非0),才会重启容器

+on-failure[:max-retries] 当容器非正常退出超过设定的次数才会重启

+always 不管退出状态码是什么,始终重启容器,当指定always时,docker daemon将无数次的重启容器,容器也会在daemon启动时尝试重启,不管容器的状态如何。

+nuless-stopped 在容器退出时,总是重启,但不考虑在docker守护进程启动之时,就已经停止了的容器,

 

 

restart选项通常只用于datached(后台运行)模式的容器,

当使用了--restart选项的容器通过docker ps 查看容器时其可能状态只用两种 up or restarting 

补充:

查看容器重启次数

docker inspecdt {{ .RestartCount }} containerName

查看容器最后一次启动时间

docker inspect {{.State.StartedAt}} containerName

 

 

参考连接: https://www.centos.bz/2017/01/docker-run-restart-policy/#%E7%A4%BA%E4%BE%8B