假设 Docker 守护进程在操作系统重新启动时由任何类似 init.d 或 systemd 的进程自动重新启动,那么重新启动一个或多个 Docker 容器的首选方法是什么?例如,我可能在反向代理或数据库服务器后面有许多 Web 服务器。
问问题
28510 次
6 回答
33
如果您使用 启动守护程序docker -d -r
,它将重新启动在守护程序停止之前正在运行的所有容器。这将成为下一个版本中的默认行为。
于 2013-09-14T00:27:11.083 回答
14
CoreOS 使用 systemd 来管理长时间运行的服务:
于 2013-09-13T23:04:21.223 回答
13
对我有用的是添加--restart='always'
到容器 {run -d ...} 命令
于 2014-09-01T08:37:53.857 回答
1
我见过的唯一文档是Docker 的 Host Integration 文档,它对细节等内容略知一二。
基本上,它建议使用 systemd 启动守护程序-r=false
并使用 systemd(或者如果您使用的是 CoreOS 以外的其他东西,则为 upstart)。
于 2014-08-07T19:25:05.633 回答
-1
使用Restart
并RestartSec
使其工作:
# Restart after crash
Restart=on-failure
# Give the service 10 seconds to recover after the previous restart
RestartSec=10s
查看文档。
于 2016-02-10T00:34:05.920 回答