如何保证 docker daemon重启,但容器不重启
使用新版本的docker, 比如 1.12.6.然后在/etc/docker/daemon.json中添加"live-restore": true选项,比如:
{
    "log-level": "warn",
    "selinux-enabled": false,
    "insecure-registries": [
        "10.213.42.254:10500",
        "10.209.224.13:10500"
    ],
    "storage-driver": "devicemapper",
    "storage-opts": [
        "dm.basesize=100G",
        "dm.loopdatasize=1T",
        "dm.loopmetadatasize=10G",
        "dm.thinpooldev=/dev/mapper/docker-thinpool",
        "dm.use_deferred_removal=true",
        "dm.use_deferred_deletion=true"
    ],
    "live-restore": true,
    "exec-opts": [
        "native.cgroupdriver=systemd"
    ]
}
然后在/usr/lib/systemd/system/docker.service中添加:
# kill only the docker process, not all processes in the cgroup
KillMode=process
这样,我们就可以重启docker daemon,而不影响运行在其中的container了。
本文由 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为: 2021/04/30 10:01
