如果设置 docker 中的容器自动重启
时间: 2023-07-01 18:14:58 浏览: 98
要设置 docker 中的容器自动重启,可以使用 `--restart` 标志。该标志有四个选项:no(不自动重启,默认选项)、always(总是自动重启)、on-failure(仅在容器退出代码非零时自动重启)、unless-stopped(除非手动停止容器,否则总是自动重启)。例如,要将容器设置为始终自动重启,可以使用以下命令:
```
docker run --restart always <image>
```
这将在容器崩溃或 Docker 守护程序重启时自动重启容器。
相关问题
如何设置 docker 中的容器自动重启 --restart=alwasy
要设置 Docker 中的容器自动重启,可以在 `docker run` 命令中使用 `--restart` 参数,并将其设置为 `always`,如下所示:
```
docker run --restart=always <image>
```
这将确保在任何情况下,包括 Docker 守护程序重启时,容器都将自动重启。如果您只想在容器失败时自动重启,请将 `--restart` 参数设置为 `on-failure`。如果您希望在容器退出时不自动重启,可以将其设置为 `no`。最后,如果您希望容器在手动停止之前一直运行,并在手动停止后不自动重启,则可以将 `--restart` 参数设置为 `unless-stopped`。
docker 容器开机自动重启的先后次序
Docker 容器的开机自动重启次序是根据容器的 `restart` 策略和容器间的依赖关系来确定的。下面是几种常见的 `restart` 策略及其先后次序:
1. `no`: 如果容器退出,不会自动重启。
2. `always`: 当容器退出时,Docker会自动重启容器。如果容器之间没有依赖关系,它们的重启次序是无序的。
3. `on-failure`: 当容器以非零状态退出时,Docker会自动重启容器。如果容器之间没有依赖关系,它们的重启次序是无序的。
4. `unless-stopped`: 当容器退出时,Docker会自动重启容器。如果容器之间没有依赖关系,它们的重启次序是无序的。与 `always` 不同的是,如果手动停止容器,则不会自动重启。
对于容器间的依赖关系,可以使用 Docker Compose 或类似的工具来管理。通过定义依赖关系,可以确保容器在启动时按照指定顺序进行重启。
请注意,以上策略和次序仅适用于容器级别的自动重启。如果主机发生意外重启或 Docker服务崩溃,Docker 守护进程重新启动后,默认行为是不会自动重启之前的容器。可以通过设置 Docker 守护进程的启动选项 `--restart` 来指定容器的重启策略。