容器重启策略(启动时启动容器)
docker run --restart=always -d <container>
默认情况下,Docker 守护程序重新启动时 Docker 不会重新启动容器,例如在主机系统重新启动后。Docker 通过提供 --restart
命令行选项为你的容器提供重新启动策略。在重新启动 Docker 守护程序后,提供 --restart=always
将始终导致重新启动容器。**但是,**当手动停止该容器时(例如,使用 docker stop <container>
),重启策略将不会应用于容器。
根据要求(--restart=[policy]
),可以为 --restart
选项指定多个选项。这些选项也会影响容器在启动时的启动方式。
政策 | 结果 |
---|---|
no |
该默认值。当容器停止时,不会自动重启容器。 |
on-failure[:max-retries] |
仅当容器以失败退出时才重新启动(non-zero exit status )。为了避免无限期地重新启动它(如果出现问题),可以限制 Docker 守护程序尝试重新启动重试的次数。 |
always |
无论退出状态如何,始终重新启动容器。当你指定 always 时,Docker 守护程序将尝试无限期地重新启动容器。无论容器的当前状态如何,容器也将始终在守护程序启动时启动。 |
unless-stopped |
无论其退出状态如何,始终重新启动容器,但如果容器之前已经处于停止状态,则不要在守护程序启动时启动它。 |