Skip to content

Regression: Docker Desktop fails to start on Raspberry Pi 5 (ARM64) since 4.44.0 — QEMU VM exits with status 1 #306

@softartdev

Description

@softartdev

Description

On Raspberry Pi 5 (ARM64, Raspberry Pi OS Bookworm 64-bit), Docker Desktop 4.44.0 and newer cannot start the Linux engine VM and shows a fatal error dialog:

running engine: engine linux/qemu failed to run: running VM: qemu: process terminated unexpectedly: exit status 1

All releases 4.39.0 → 4.43.2 work on the same device; 4.44.0+ consistently fail. This points to a regression introduced in 4.44.0.

Reproduce

  1. Install Docker Desktop 4.44.0+ ARM64 .deb on Raspberry Pi 5.
  2. Start Desktop (GUI or systemctl --user start docker-desktop).
  3. After ~30 s the engine fails to start; Desktop shows the modal error above; the UI shows Engine “Stopped/Starting…”.

Verification: uninstall 4.44.0+, install 4.43.2 → engine starts; docker run hello-world prints the expected output. Re-upgrade to 4.44.0+ → failure returns.

Expected behavior

On ARM64 Linux hosts, Desktop should either:

  • launch an ARM64 LinuxKit VM (using KVM on ARM), or
  • at least fallback to QEMU TCG when KVM accel is not viable for cross-arch x86 guests (this is what effectively happened in ≤4.43.2).

docker version

Client: Docker Engine - Community
 Version:           28.5.1
 API version:       1.51
 Go version:        go1.24.8
 Git commit:        e180ab8
 Built:             Wed Oct  8 12:18:25 2025
 OS/Arch:           linux/arm64
 Context:           desktop-linux
Cannot connect to the Docker daemon at unix:///home/rpi/.docker/desktop/docker.sock. Is the docker daemon running?

docker info

Client: Docker Engine - Community
 Version:    28.5.1
 Context:    desktop-linux
 Debug Mode: false
 Plugins:
  ai: Docker AI Agent - Ask Gordon (Docker Inc.)
    Version:  v1.9.11
    Path:     /home/rpi/.docker/cli-plugins/docker-ai
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.26.1-desktop.1
    Path:     /home/rpi/.docker/cli-plugins/docker-buildx
  cloud: Docker Cloud (Docker Inc.)
    Version:  v0.4.11
    Path:     /home/rpi/.docker/cli-plugins/docker-cloud
  compose: Docker Compose (Docker Inc.)
    Version:  v2.39.1-desktop.1
    Path:     /home/rpi/.docker/cli-plugins/docker-compose
  debug: Get a shell into any image or container (Docker Inc.)
    Version:  0.0.42
    Path:     /home/rpi/.docker/cli-plugins/docker-debug
  desktop: Docker Desktop commands (Docker Inc.)
    Version:  v0.2.0
    Path:     /home/rpi/.docker/cli-plugins/docker-desktop
  extension: Manages Docker extensions (Docker Inc.)
    Version:  v0.2.29
    Path:     /home/rpi/.docker/cli-plugins/docker-extension
  init: Creates Docker-related starter files for your project (Docker Inc.)
    Version:  v1.4.0
    Path:     /home/rpi/.docker/cli-plugins/docker-init
  mcp: Docker MCP Plugin (Docker Inc.)
    Version:  v0.13.0
    Path:     /home/rpi/.docker/cli-plugins/docker-mcp
  sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
    Version:  0.6.0
    Path:     /home/rpi/.docker/cli-plugins/docker-sbom
  scout: Docker Scout (Docker Inc.)
    Version:  v1.18.2
    Path:     /home/rpi/.docker/cli-plugins/docker-scout

Server:
Cannot connect to the Docker daemon at unix:///home/rpi/.docker/desktop/docker.sock. Is the docker daemon running?

Diagnostics ID

552FFA38-F2A8-40D4-BC1A-46DBB1093797/20251024061355

Additional Info

Image

Environment

  • Device: Raspberry Pi 5 Model B (BCM2712, 8 GB), ARM64
  • OS: Raspberry Pi OS (Debian 12/Bookworm), 64-bit
  • Kernel: tried both RPi 16 KB and upstream 4 KB page variants — same outcome on 4.44.0+
  • Prereqs: qemu-system, qemu-user-static, binfmt-support installed (/usr/bin/qemu-system-x86_64 present); /dev/kvm exists (ARM KVM for ARM guests; no HW virt for x86 on ARM)

Version window

  • Last Known Good (LKG): 4.43.2 (build 199162) — engine starts, docker run hello-world works
  • First Bad: 4.44.0 (build 201307) — engine fails with the error above
  • Also failing: every version from 4.44.0 up to current (e.g., 4.49.0) on this device

Suspected root cause

In 4.44.0, Desktop likely removed or tightened the QEMU-only emulation path (QEMU removal noted in 4.44 notes on other platforms). The Linux engine path appears to always attempt an x86_64 VM with KVM acceleration; on ARM this cannot succeed (no cross-arch KVM), and there is no TCG fallback, so QEMU aborts immediately.

Workarounds

  • Pin Desktop to 4.43.2 (last working).
  • Or use Docker Engine directly on Pi OS (works fine) + optional Portainer UI.

Request

  • Please acknowledge and fix the regression by either:
    1. restoring a TCG fallback when KVM accel cannot be used, or
    2. providing an ARM64 engine VM path on Linux/ARM64 hosts (preferred; use KVM on ARM).
  • If not feasible short-term, surface a clear message that this host/arch is unsupported instead of a generic QEMU crash.

Thanks — happy to test experimental builds on real Pi 5 hardware.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions