举个栗子
创建容器
docker run -d --name test \ --restart=unless-stopped \ -p 8080:8080 \ tomcat:alpine
列出容器
docker ps --format '{{.ID}} {{.Status}} {{.Names}}'
a88aa63d67a9 Up 1 minutes test注意: 这里ps子命令使用格式化输出,特别是status列表示容器的状态,更多信息请查看参考2。
模拟宕机
# 关闭VM电源,并重新开机。
验证容器是否启动
docker ps --format '{{.ID}} {{.Status}} {{.Names}}'
a88aa63d67a9 Up 51 seconds testdocker run --help | grep "restart" --restart=no Restart policy to apply when a container exits
restart 参数选项
no 默认选项,不会重新启动容器。 on-failure[:max-retries] 容器处于非零退出状态时重新启动容器,使用可选项则会限制重新启动尝试次数。 unless-stopped 无论容器退出状态如何始终重新启动容器,但如果容器之前已处于停止状态,则在守护程序启动时不会启动它。 always 无论容器退出状态如何,Docker守护进程无限期地尝试重新启动容器。
下一篇:Redis 的四种模式