如何在Docker守护进程停机期间保持容器处于活动状态

2022-01-10  本文已影响0人  87d6dc4b11a7

默认情况下,当 Docker 守护进程终止时,它会关闭正在运行的容器。您可以配置守护程序,以便在守护程序不可用时容器保持运行。
1、将配置添加到守护程序配置文件。在 Linux 上,这默认为/etc/docker/daemon.json。

[root@localhost docker]# vi daemon.json
{
  "live-restore": true,
  "registry-mirrors": ["https://*****.mirror.aliyuncs.com"]
}

2、重新启动 Docker 守护程序。在 Linux 上,可以通过重新加载 Docker 守护程序来避免重新启动(并避免容器停机)。如果使用 systemd,则使用命令systemctl reload docker。否则,向进程发送 SIGHUP信号kill -SIGHUP $(pidof dockerd)

[root@localhost docker]# systemctl reload docker
或者
[root@localhost docker]# kill -SIGHUP $(pidof dockerd)

3、检查是否配置成功

[root@localhost docker]# docker info | grep -i live
 Live Restore Enabled: true

此时重启 docker 不会重启容器.

如果有容器挂载了 docker.sock 文件,重启后工作可能会不正常,需要重启该容器。原因是重启 dockerd 后 docker.sock 文件的 inode 变了。

参考:https://docs.docker.com/config/containers/live-restore/

上一篇下一篇

猜你喜欢

热点阅读