for-mac icon indicating copy to clipboard operation
for-mac copied to clipboard

4.38.0 com.docker.backend. CPU usage is 100% ...

Open alan-vos opened this issue 9 months ago • 5 comments

Description

Any container you start that after awhile (an hour or so), backend is CPU pegged at 100%.

Another observation: once I shutdown (quit) Docker Desktop, the com.docker.backend service is still running at 100% CPU usage. I had to restart my MacBook to eliminate it.

Reproduce

Start any container (I used Alpine Linux 3.21), and after about an hour, backend is pegged at 100% CPU usage.

Expected behavior

backend CPU usage should be under 2% to 10% range.

docker version

Client:
 Version:           27.5.1
 API version:       1.47
 Go version:        go1.22.11
 Git commit:        9f9e405
 Built:             Wed Jan 22 13:37:19 2025
 OS/Arch:           darwin/arm64
 Context:           desktop-linux

Server: Docker Desktop 4.38.0 (181591)
 Engine:
  Version:          27.5.1
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.11
  Git commit:       4c9b3b0
  Built:            Wed Jan 22 13:41:25 2025
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.7.25
  GitCommit:        bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e946
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

docker info

Client:
 Version:           27.5.1
 API version:       1.47
 Go version:        go1.22.11
 Git commit:        9f9e405
 Built:             Wed Jan 22 13:37:19 2025
 OS/Arch:           darwin/arm64
 Context:           desktop-linux

Server: Docker Desktop 4.38.0 (181591)
 Engine:
  Version:          27.5.1
  API version:      1.47 (minimum version 1.24)
  Go version:       go1.22.11
  Git commit:       4c9b3b0
  Built:            Wed Jan 22 13:41:25 2025
  OS/Arch:          linux/arm64
  Experimental:     false
 containerd:
  Version:          1.7.25
  GitCommit:        bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e946
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
ALANG-M3:~ aguedeney$ docker info
Client:
 Version:    27.5.1
 Context:    desktop-linux
 Debug Mode: false
 Plugins:
  ai: Ask Gordon - Docker Agent (Docker Inc.)
    Version:  v0.7.3
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-ai
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.20.1-desktop.2
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.32.4-desktop.1
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-compose
  debug: Get a shell into any image or container (Docker Inc.)
    Version:  0.0.38
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-debug
  desktop: Docker Desktop commands (Beta) (Docker Inc.)
    Version:  v0.1.4
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-desktop
  dev: Docker Dev Environments (Docker Inc.)
    Version:  v0.1.2
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-dev
  extension: Manages Docker extensions (Docker Inc.)
    Version:  v0.2.27
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-extension
  feedback: Provide feedback, right in your terminal! (Docker Inc.)
    Version:  v1.0.5
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-feedback
  init: Creates Docker-related starter files for your project (Docker Inc.)
    Version:  v1.4.0
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-init
  sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
    Version:  0.6.0
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-sbom
  scout: Docker Scout (Docker Inc.)
    Version:  v1.16.1
    Path:     /Users/aguedeney/.docker/cli-plugins/docker-scout

Server:
 Containers: 2
  Running: 0
  Paused: 0
  Stopped: 2
 Images: 7
 Server Version: 27.5.1
 Storage Driver: overlayfs
  driver-type: io.containerd.snapshotter.v1
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 CDI spec directories:
  /etc/cdi
  /var/run/cdi
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: bcc810d6b9066471b0b6fa75f557a15a1cbf31bb
 runc version: v1.1.12-0-g51d5e946
 init version: de40ad0
 Security Options:
  seccomp
   Profile: unconfined
  cgroupns
 Kernel Version: 6.12.5-linuxkit
 Operating System: Docker Desktop
 OSType: linux
 Architecture: aarch64
 CPUs: 4
 Total Memory: 2.845GiB
 Name: docker-desktop
 ID: 947dc408-2edf-4539-92a7-77c20ea6a2b7
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 HTTP Proxy: http.docker.internal:3128
 HTTPS Proxy: http.docker.internal:3128
 No Proxy: hubproxy.docker.internal
 Labels:
  com.docker.desktop.address=unix:///Users/aguedeney/Library/Containers/com.docker.docker/Data/docker-cli.sock
 Experimental: false
 Insecure Registries:
  hubproxy.docker.internal:5555
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: daemon is not using the default seccomp profile

Diagnostics ID

7472A6C4-04D4-43F4-A84A-A63221C5AD68/20250304034445

Additional Info

Image

alan-vos avatar Mar 04 '25 03:03 alan-vos

This looks like #5164 (?)

alan-vos avatar Mar 04 '25 03:03 alan-vos

Thanks for the report. When this happens next, could you click on the process in Activity Monitor, click on the Info button, then click “Sample” and share the output? After it should be possible to Force Quit the process (but it might not respond to a normal Quit) Thanks!

djs55 avatar Mar 05 '25 09:03 djs55

My com.docker.backend was also locked at 100% Cpu Usage after hibernation for a few hours. Here is the output:

Analyse von „com.docker.backend“.txt

MarmeladeKeks avatar Mar 06 '25 21:03 MarmeladeKeks

It seems the previous conditions did not set off com.docker.backend to 100% CPU usage. I'll keep trying, but for now I haven't been able to reproduce the problem. However, if and when it happens again, I will add the "Sample" output here.

alan-vos avatar Mar 09 '25 02:03 alan-vos

I have the same issue, my com.docker.backend process sits at 99.8%.

I've tried switching FS from VirtioFS to gRPC FUSE and back again, as well as Docker VMM / Apple Virtualisation Framework without success.

ctompkinson avatar Mar 09 '25 12:03 ctompkinson

Add another one to the list of people affected. Started this week after the most recent update. Been using Docker Desktop on this system for years without experiencing this issue.

lanmaster53 avatar Apr 11 '25 20:04 lanmaster53

I can confirm the same issue for Docker Desktop 4.4.0 (engine 28.0.4) on an Intel Mac:

Docker Info

$ docker info

Client:
 Version:    28.0.4
 Context:    desktop-linux
 Debug Mode: false
 Plugins:
  ai: Docker AI Agent - Ask Gordon (Docker Inc.)
    Version:  v1.1.3
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-ai
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.22.0-desktop.1
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-buildx
  cloud: Docker Cloud (Docker Inc.)
    Version:  0.2.20
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-cloud
  compose: Docker Compose (Docker Inc.)
    Version:  v2.34.0-desktop.1
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-compose
  debug: Get a shell into any image or container (Docker Inc.)
    Version:  0.0.38
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-debug
  desktop: Docker Desktop commands (Beta) (Docker Inc.)
    Version:  v0.1.6
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-desktop
  dev: Docker Dev Environments (Docker Inc.)
    Version:  v0.1.2
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-dev
  extension: Manages Docker extensions (Docker Inc.)
    Version:  v0.2.27
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-extension
  init: Creates Docker-related starter files for your project (Docker Inc.)
    Version:  v1.4.0
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-init
  sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
    Version:  0.6.0
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-sbom
  scout: Docker Scout (Docker Inc.)
    Version:  v1.17.0
    Path:     /Users/markusmahlberg/.docker/cli-plugins/docker-scout

Server:
 Containers: 2
  Running: 2
  Paused: 0
  Stopped: 0
 Images: 9
 Server Version: 28.0.4
 Storage Driver: overlayfs
  driver-type: io.containerd.snapshotter.v1
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 CDI spec directories:
  /etc/cdi
  /var/run/cdi
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 753481ec61c7c8955a23d6ff7bc8e4daed455734
 runc version: v1.2.5-0-g59923ef
 init version: de40ad0
 Security Options:
  seccomp
   Profile: unconfined
  cgroupns
 Kernel Version: 6.10.14-linuxkit
 Operating System: Docker Desktop
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 7.656GiB
 Name: docker-desktop
 ID: 76b1b417-da47-4669-8fc8-f59c5cb5ead9
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 HTTP Proxy: http.docker.internal:3128
 HTTPS Proxy: http.docker.internal:3128
 No Proxy: hubproxy.docker.internal
 Labels:
  com.docker.desktop.address=unix:///Users/markusmahlberg/Library/Containers/com.docker.docker/Data/docker-cli.sock
 Experimental: false
 Insecure Registries:
  hubproxy.docker.internal:5555
  ::1/128
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: DOCKER_INSECURE_NO_IPTABLES_RAW is set
WARNING: daemon is not using the default seccomp profile

System Info

$ system_profiler SPSoftwareDataType SPHardwareDataType
Software:

    System Software Overview:

      System Version: macOS 14.7.4 (23H420)
      Kernel Version: Darwin 23.6.0
      Boot Volume: Macintosh HD
      Boot Mode: Normal
      Computer Name: MacBook Pro von Markus
      User Name: Markus Mahlberg (markusmahlberg)
      Secure Virtual Memory: Enabled
      System Integrity Protection: Disabled
      Time since boot: 5 Stunden

Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro14,1
      Processor Name: Dual-Core Intel Core i5
      Processor Speed: 2,3 GHz
      Number of Processors: 1
      Total Number of Cores: 2
      L2 Cache (per Core): 256 KB
      L3 Cache: 4 MB
      Hyper-Threading Technology: Enabled
      Memory: 16 GB
      System Firmware Version: 529.140.2.0.0
      OS Loader Version: 580.140.1~51
      SMC Version (system): 2.43f11

mwmahlberg avatar Apr 12 '25 13:04 mwmahlberg

Same issue here:

  • Intel Macbook
  • macOS Sequoia 15.4.1
  • Docker Desktop 4.40.0

Image

Sample of Docker.txt

erikvanzijst avatar Apr 20 '25 21:04 erikvanzijst

I've noticed every time I run docker compose up or down the docker daemon gets a 100% bump in CPU. After running docker compose up + down 3 times, it's now sitting at 600% CPU even through no containers are running.

Sample of Docker2.txt

erikvanzijst avatar Apr 20 '25 21:04 erikvanzijst

Interesting finding @erikvanzijst -- I have exactly the same behaviour on my Intel Mac. After startup com.docker.backend has negligible CPU usage. As soon as I start my usual compose stack (dc up -d), the process consumes 200% CPU, if I downit and start it again, the usage rises further; roughly by some multiples of 100%. The exact amount seems to change (100%, 200%, 400% or even more).

The desktop app as well as the containers keep responsive, nothing "hangs". But the fan spins all the time, and the only thing that helps is quitting the desktop app and start it again.

Here is the sample from activity monitor, after a fresh docker start and starting my stack once (cpu load 200%): Analyse von „Docker“.txt

PS: I have this behavior for months now over some versions from MacOS and Docker Desktop and I need to quit the docker app regularly. While working with docker (so all my day) the fans are constantly spinning.

bgkm avatar Apr 28 '25 16:04 bgkm

I am also seeing this on an Intel Mac. (Docker for Mac 4.40.0).

Terminating the Docker app stops the problem.

I can restart the Docker app and this will also solve the CPU problem, but as soon as I run another container it's pegs the CPU again- which persists long after the container has terminated.

niall-byrne avatar Apr 28 '25 16:04 niall-byrne

I just updated to 4.41.0 (190950) and at first glance it seems like the problem is gone. I have started and stopped a stack multiple times, and CPU usage is normal. If the problems come back later today, I will edit this Post.

bgkm avatar Apr 29 '25 08:04 bgkm

I have also been using 4.41.0 (190950) for a couple days now without this issue reoccurring 🤞

jmks avatar Apr 30 '25 20:04 jmks

Same here. I haven't seen the issue since upgrading to 4.41.0. 🤞

erikvanzijst avatar Apr 30 '25 21:04 erikvanzijst