# 2021-01-19 #「Docker」- 更新配置而无需重启服务

问题描述

当我们修改配置之后,需要重启服务,使得配置生效。

但是,重启 dockerd 服务,容器会被停止。我们希望容器继续运行,而不是停止。

该笔记将记录:如何重载配置文件,而无需重启 dockerd 服务。

解决方法

在 dockerd 中,通过 HUP 信号,可以重载某些选项,而无需重启容器。

受支持选项可以参考 dockerd | Docker Documentation / CONFIGURATION RELOAD BEHAVIOR 文档。

示例:设置镜像加速站点

# vim /etc/docker/daemon.json
{
    ...
    "registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"],
    ...
}

# systemctl reload docker 

Keep containers running when daemon down

当守护进程 dockerd 不可用时,保持容器继续运行,可以使用如下配置:

# vim /etc/docker/daemon.json
{
    ...
    "live-restore": true,
    ...
}

# systemctl reload docker # SIGHUP

参考文献

WikiNotes/更新配置而无需重启服务
Keep containers alive during daemon downtime
Reload docker logging configuration without daemon restart - Stack Overflow
dockerd | Docker Documentation / CONFIGURATION RELOAD BEHAVIOR

猜你喜欢

转载自blog.csdn.net/u013670453/article/details/112808916