【发布时间】:2019-02-21 16:26:57
【问题描述】:
我有一台运行最新更新的 Ubuntu 18.04.2 LTS 的服务器。我使用来自https://docs.docker.com/install/linux/docker-ce/ubuntu/的教程使用repo安装了docker-ce
在启动后不久,docker 守护进程以某种方式被杀死。为了调试,我跑了
/usr/bin/dockerd
以 root 身份获取日志输出:
root@hostname ~ # /usr/bin/dockerd
INFO[2019-02-21T17:20:15.233508941+01:00] systemd-resolved is running, so using resolvconf: /run/systemd/resolve/resolv.conf
INFO[2019-02-21T17:20:15.235533437+01:00] parsed scheme: "unix" module=grpc
INFO[2019-02-21T17:20:15.235562227+01:00] scheme "unix" not registered, fallback to default scheme module=grpc
INFO[2019-02-21T17:20:15.235594491+01:00] parsed scheme: "unix" module=grpc
INFO[2019-02-21T17:20:15.235601292+01:00] scheme "unix" not registered, fallback to default scheme module=grpc
INFO[2019-02-21T17:20:15.239064773+01:00] ccResolverWrapper: sending new addresses to cc: [{unix:///run/containerd/containerd.sock 0 <nil>}] module=grpc
INFO[2019-02-21T17:20:15.239098425+01:00] ClientConn switching balancer to "pick_first" module=grpc
INFO[2019-02-21T17:20:15.239155494+01:00] pickfirstBalancer: HandleSubConnStateChange: 0xc42018d430, CONNECTING module=grpc
INFO[2019-02-21T17:20:15.239321579+01:00] pickfirstBalancer: HandleSubConnStateChange: 0xc42018d430, READY module=grpc
INFO[2019-02-21T17:20:15.240106192+01:00] ccResolverWrapper: sending new addresses to cc: [{unix:///run/containerd/containerd.sock 0 <nil>}] module=grpc
INFO[2019-02-21T17:20:15.240142826+01:00] ClientConn switching balancer to "pick_first" module=grpc
INFO[2019-02-21T17:20:15.240193046+01:00] pickfirstBalancer: HandleSubConnStateChange: 0xc4207c2120, CONNECTING module=grpc
INFO[2019-02-21T17:20:15.240315657+01:00] pickfirstBalancer: HandleSubConnStateChange: 0xc4207c2120, READY module=grpc
INFO[2019-02-21T17:20:15.243221391+01:00] [graphdriver] using prior storage driver: overlay2
INFO[2019-02-21T17:20:15.275042317+01:00] Graph migration to content-addressability took 0.00 seconds
WARN[2019-02-21T17:20:15.275313782+01:00] Your kernel does not support swap memory limit
WARN[2019-02-21T17:20:15.275355076+01:00] Your kernel does not support cgroup rt period
WARN[2019-02-21T17:20:15.275369332+01:00] Your kernel does not support cgroup rt runtime
INFO[2019-02-21T17:20:15.275785076+01:00] Loading containers: start.
INFO[2019-02-21T17:20:16.335203892+01:00] 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
INFO[2019-02-21T17:20:16.683066803+01:00] Loading containers: done.
INFO[2019-02-21T17:20:16.835625998+01:00] Docker daemon commit=6247962 graphdriver(s)=overlay2 version=18.09.2
INFO[2019-02-21T17:20:16.835701364+01:00] Daemon has completed initialization
INFO[2019-02-21T17:20:16.842961863+01:00] API listen on /var/run/docker.sock
Killed
如您所见,最后有两个警告(我认为它们无关紧要)和一个关于杀戮的消息。守护进程的运行时间大约是一分钟。
我之前在这台机器上安装了 docker(使用 docker.io),但我清除了所有数据包,删除了 /var、/etc 和 /home 和 /run 中所有与 docker 相关的文件,并执行了系统范围的搜索对于其中包含*docker* 的任何文件。问题仍然存在。如何进一步调试并找出 docker 守护进程一直被杀死的原因?
【问题讨论】:
-
这可能是问题所在:您的内核不支持交换内存限制/您的内核不支持 cgroup rt 周期/您的内核不支持 cgroup rt 运行时
-
我有几台其他机器运行良好,但出现这些警告。另外,根据this,警告应该是无关紧要的,因为我没有运行任何容器,因此不会对其内存消耗施加任何限制。
标签: linux docker crash systemd