一、Docker容器的重启策略
设置容器的重启策略,以决定在容器退出时Docker守护进程是否重启刚刚退出的容器
--restart=策略
1.1、参数说明
- no: 默认策略,在任何情况下都不会重启容器。
- on-failure:num: 在容器退出时,退出状态码非0,才会重启容器 ,默认最多重启3次 ,可设置num的值
- always: 在容器退出时总是重启容器,无论状态码是什么, 每当重新启动Docker服务时,无论使用容器是正在运行还是现在运行,使用Always策略的容器将重新启动。
- unless-stopped: 当容器停止并且服务器重新启动或Docker服务重新启动时,该容器将不会重新启动。当容器运行并且服务器重新启动或Docker服务重新启动时,该容器将会重新启动。
1.2、注意
- –restart选项通常只用于detached模式的容器。
- –restart选项不能与–rm选项同时使用。
- –restart选项适用于detached模式的容器
- –rm选项适用于foreground模式的容器。
- 在docker ps查看容器时,对于使用了–restart选项的容器,其可能的状态只有Up或Restarting两种状态。
二、设置未运行容器的重启策略(mysql57 )
docker run -d -p 3306:3306 --name mysql57 -e MYSQL_ROOT_PASSWORD=root --restart=always f83a2938370c
三、设置运行容器的重启策略
docker update --restart=always < container >
四、查看容器重启信息
4.1、查看容器重启次数
docker inspect -f “{{ .RestartCount }}” ba-208
4.2、查看容器最后一次的启动时间
docker inspect -f “{{ .State.StartedAt }}” ba-208
五、重启docker测试重启策略
systemctl stop docker
systemctl restart docker