【问题标题】:Docker daemon hangsDocker 守护进程挂起
【发布时间】:2018-04-25 01:26:19
【问题描述】:

我是 docker 新手,想看看为什么我的 docker 守护进程挂起。

我已将基本池大小增加到 15GB 以启动 oracle db 容器。我成功地启动了它,但一段时间后我的虚拟机停止响应并且在 docker 停止后不久。不管什么原因,我都无法启动它。

这是我运行的命令,/usr/bin/dockerd --storage-opt dm.basesize=15G &

我看到日志如下:

WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 
max=4096
WARN[0001] devmapper: Usage of loopback devices is strongly discouraged for 
production use. Please use `--storage-opt dm.thinpooldev` or use `man 
docker` to refer to dm.thinpooldev section.
WARN[0001] devmapper: Base device already exists and has filesystem xfs on 
it. User specified filesystem  will be ignored.
INFO[0001] [graphdriver] using prior storage driver "devicemapper"
INFO[0001] Graph migration to content-addressability took 0.00 seconds
WARN[0001] mountpoint for pids not found
INFO[0001] Loading containers: start.
INFO[0001] Firewalld running: false
INFO[0001] Default bridge (docker0) is assigned with an IP address 
172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address

此后,我的虚拟机停止响应。我必须重新启动我的虚拟机,而这又不会启动 docker。一旦我再次启动我的 docker 守护进程,我就会看到上面的日志

我有 rhel 7.3 和 docker 版本 1.12,我正在使用 docker-compose 创建容器

如果您需要更多信息,请告诉我

谢谢

【问题讨论】:

    标签: docker daemon


    【解决方案1】:

    关于loopback devices is there for a reason的警告:

    WARN[0001] devmapper: Usage of loopback devices is strongly discouraged for 
    production use. Please use `--storage-opt dm.thinpooldev` or use `man 
    docker` to refer to dm.thinpooldev section.
    

    大多数时候是 Docker 空间不足导致守护程序挂起。在环回文件系统上,它可能会更随机地发生,尤其是在您对文件系统施加压力的情况下。

    尝试使用环回设备的direct-lvm pool instead

    【讨论】:

    • 谢谢马特。我将研究设置 direct-lvm 并查看是否有帮助。测试后会回复
    【解决方案2】:

    一旦我看到 Ubuntu 上的 docker 服务像这样挂起:

    \_ /bin/sh /usr/sbin/invoke-rc.d docker start
       \_ systemctl --job-mode=ignore-dependencies start docker.service
          \_ /bin/systemd-tty-ask-password-agent --watch
    

    我的解决方案是禁用 systemd-ask-password-wall.service:

    systemctl disable systemd-ask-password-wall.service
    

    【讨论】: