Docker提供重启策略来控制您的容器在退出时还是在Docker重新启动时自动启动。重新启动策略确保链接的容器以正确的顺序启动。Docker建议您使用重启策略,并避免使用流程管理器来启动容器。
重新启动策略–live-Restore与dockerd命令标志不同。使用–live-Restore可以使您的容器在Docker升级期间保持运行,尽管网络和用户输入被中断。
要为容器配置重启策略,请–Restart在使用docker Run命令时使用该标志。–Restart标志的值可以是以下任意值:
no 不要自动重启容器。(默认)
on-failure 如果容器由于错误而退出,请重新启动容器,该错误表示为非零退出代码。
always 如果容器停止,请务必重新启动它。如果手动停止,则仅在Docker守护进程重新启动或容器本身手动重新启动时才重新启动。
unless-stopped 与相似always,除了在容器停止(手动或其他方式)时,即使重新启动Docker守护程序也不会重新启动容器。
以下示例启动Redis容器并将其配置为始终重新启动,除非已明确将其停止或重新启动Docker。
$ docker Run -d –Restart unless-stopped Redis
此命令更改名为的已运行容器的重启策略Redis。
$ docker update –Restart unless-stopped Redis
并且此命令将确保除非停止,否则将重新启动所有当前正在运行的容器。
$ docker update –Restart unless-stopped $(docker ps -q)