Docker Desktop for Apple Silicon has been released, although it's not quite the seamless conversion some may expect.
Declaring that getting Docker Desktop working on Apple's M1 chip as "by far our most upvoted roadmap item ever," the company is naturally chuffed that container fans selecting Apple's latest hardware can now also crank out code using its tooling.
Rosetta 2, aimed at getting x64 apps up and running on Apple Silicon, only goes so far and to get the virtual machine that lurks beneath the hood of Docker Desktop, the company had to make the jump to Apple's new hypervisor framework as well as deal with all the associated plumbing.
A developer preview turned up in December, although Docker noted "it is not release quality yet, or even beta quality." Four months down the line (and 45,000 downloads of the various preview builds) and here we are.
Sadly, Docker has not managed a full jump into the M1 world. "Some binaries," it said, "are still Darwin/AMD64," necessitating Apple's Rosetta 2. That compatibility problem continues as the company noted that not all images (for example, mysql) are available for Arm64.
The workaround? For the mysql unavailability issue, maybe use mariadb?
There are other problems. "Attempts to run Intel-based containers on Apple Silicon machines can crash as QEMU sometimes fails to run the container," according to Docker, and other QEMU-related issues include Filesystem change notification APIs.
"Therefore, we recommend that you run ARM64 containers on Apple Silicon machines," Docker said, adding that it expected fixes in future releases and the issue to become less common over time "as more and more images are rebuilt supporting multiple architectures."
Apple Macs running Apple Silicon are a recent event and Docker's efforts to get its product into the hands of developers, while laudable, also demonstrates the platform still has a way to go before achieving the dampest of fanboi developer dreams. ®