Skip to content

RyzenHV 0.5.0: Docker Desktop on AMD

Choose a tag to compare

@OverlordDev OverlordDev released this 29 Oct 16:01
· 21 commits to main since this release

Docker Desktop now runs on a Ryzen. The real Docker Desktop for Mac (Intel build 4.97.0), not just a Linux VM with dockerd.

Docker Desktop still ships HyperKit, a VMM that uses only the core Hypervisor.framework API. With the shim and a few patches it runs on AMD-V:
hello-world, an image build, nginx with a published port reachable from the Mac, a 16-way CPU load, and start / hard-kill / restart cycles all work (Ryzen 7 5800H, macOS 15.8.1).

tar xzf ryzenhv-0.5.0-macos-x86_64.tar.gz && cd ryzenhv-0.5.0
xattr -dr com.apple.quarantine .
./rhv docker-desktop get      # downloads Docker Desktop 4.97.0 from docker.com and installs it (skip if you already have that build)
./rhv docker-desktop          # patches HyperKit, wraps HyperKit and the backend, selects the HyperKit engine
open -a Docker                # then: docker run --rm hello-world

Details and limits (exactly build 244584, AMFI relaxed, updates replace Docker's files): docs/DOCKER-DESKTOP.md.

Also in this release

  • rhv doctor reports the Docker Desktop state; the menu has an entry for it.
  • Shim: HyperKit gets NMI-window exiting and virtual NMIs, AMD-only CPUID bits (MWAITX, IBPB, ...) are hidden from its guest, and its vCPU threads get the slot they ask for.
  • The small Alpine + dockerd VM (./rhv docker up) is still there for people who do not want Docker Desktop.

Everything else is as in 0.4.0: RyzenHV.kext, the shim, QEMU 11.1.2 and the rhv installer (kext into the OpenCore EFI, Parallels 26.5.0).
Tested on a Ryzen 7 5800H, macOS 15.8.1, OpenCore. Experimental: install on a test EFI first and keep a working one without the kext.
The kext is unsigned (loaded through OpenCore). QEMU and its libraries come under their own licenses, sources in LICENSES/SOURCES.txt.
Docker Desktop is Docker's product under Docker's licence; nothing of it is in this archive.