moby: 1.10 docker daemon high cpu usage

Although there’s no running containers and this host should have done the image migration already, the daemon is in high load:

root       1074 30.1  0.3 7409156 104624 ?      Ssl  Feb08 697:50 /usr/bin/docker daemon

restarting the daemon seems to bring it back to normal:

root      64027  0.1  0.1 978960 43112 ?        Ssl  04:13   0:00 /usr/bin/docker daemon

Is there anything that should be used to diagnose what’s happening? strace is showing futex wait probably because everything is happening in threads.

ec2 c4.4xlarge instance: Linux ip-10-0-0-4 3.19.0-49-generic #55~14.04.1-Ubuntu SMP Fri Jan 22 11:24:31 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

docker info:

Containers: 3
 Running: 0
 Paused: 0
 Stopped: 3
Images: 230
Server Version: 1.10.0
Storage Driver: btrfs
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: host bridge null
Kernel Version: 3.19.0-49-generic
Operating System: Ubuntu 14.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 16
Total Memory: 29.44 GiB
Name: ip-10-0-0-4
ID: WQ5A:YSST:Q7BM:WDJV:EDRE:YCBF:J2BS:3OYK:Z7DX:U4JS:WHWD:DOUN
Username: _______
Registry: https://index.docker.io/v1/
WARNING: No swap limit support

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Reactions: 1
  • Comments: 36 (20 by maintainers)

Most upvoted comments

For a quick fix while this is worked out, do this:

$ sudo pkill docker

I have this same issue today. Ubuntu 16.04

~$ docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 3
Server Version: 17.12.0-ce
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: nvidia runc
Default Runtime: runc
Init Binary: docker-init
containerd version: N/A (expected: 89623f28b87a6004d4b785663257362d1658a729)
runc version: b2567b37d7b75eb4cf325b77297b140ea686ce8f
init version: 949e6fa
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.13.0-32-generic
Operating System: Ubuntu 16.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 12
Total Memory: 31.33GiB
Name: shiquan-dl
ID: B7EX:LJZE:XPUM:BFQT:LF3P:2MN5:5RA2:BFWS:KLOF:Y6QC:POU6:REZF
Docker Root Dir: /media/data2/docker-data
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

WARNING: No swap limit support

Use top to check shows:

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
2322 root      20   0 1420204  34724  11300 S 269.8  0.1  10556:17 dockerd

I just had this on xenial. Pulled the network, closed a few processes and top showed docker-daemon using >200% CPU (it’s in that mode where each core counts as 100%)

latest docker-ce from official docker repo’s. I have a firewall which is up and not reporting any problems in logs, the problem persisted even after wifi disconnect. I’ve no idea what is causing but docker is the reported process from top.

Other notes are that the nvidia graphics card after killing the docker server has a lot of compositing issues.