Docker Desktop on Surface Pro 11 Snapdragon X Elite
I recently pulled the trigger on a new Surface Pro 11 with the Snapdragon X Elite to replace an aging Surface Pro laptop that I have been using for 3 years or so now. However, given the new appeal of ARM and wanting better battery life out of my laptop/tablet, I decided to spring for the Surface Pro 11 with the new ARM chip running the Snapdragon X Elite. Can it do DevOps work using things like WSL2 and Docker Desktop? I didn’t find much out on the net about anyone confirming things to work for sure. So, this post will hopefully help those who might be wondering on that front.
Table of contents
WSL2 on the Surface Pro 11 with Snapdragon X Elite
So one of the first things I immediately tried was installing Ubuntu from the Microsoft Store and running in WSL2. I didn’t have any issues doing this on the Snapdragon X Elite. The Ubuntu installation installed without issue and runs fine.
Docker Desktop on Surface Pro 11 Snapdragon X Elite
However, my first try with Docker Desktop running on the Surface Pro 11 Snapdragon X Elite processor was a different story. I navigated to the Docker Desktop download page. One thing I noticed off the bat was there is no dedicated download for Windows on ARM. So, I just downloaded the available Docker Desktop for Windows.
After installing Docker Desktop and rebooting, I launched Docker Desktop and got the following message after Docker Desktop started. Not good. So is this supported?
Searching for the error “wsl.exe –mount is not supported on ARM64” didn’t really surface anything useful or that I could try with either the underlying WSL2 instance or Docker Desktop itself.
However, doing some more searching I thankfully stumbled onto the following blog post announcing support for Windows on ARM for Docker Desktop:
So, it is supported! However, why am I getting the error message if it is supported and it looks like I am definitely running a version that should be supported in v4.32? I started wondering if there was something wrong with my WSL2 instance.
Docker Desktop for Windows on ARM Beta
However, I stumbled onto another link that took me to the Docker documentation link here: Install Docker Desktop on Windows | Docker Docs. This link shows a Docker Desktop for Windows – Arm (Beta) download link.
There is a tab showing the requirements and prerequisites to note:
- WSL version 1.1.3.0 or later.
- Windows 11 64-bit: Home or Pro version 21H2 or higher, or Enterprise or Education version 21H2 or higher.
- Windows 10 64-bit:
- We recommend Home or Pro 22H2 (build 19045) or higher, or Enterprise or Education 22H2 (build 19045) or higher.
- Minimum required is Home or Pro 21H2 (build 19044) or higher, or Enterprise or Education 21H2 (build 19044) or higher.
- Turn on the WSL 2 feature on Windows. For detailed instructions, refer to theย Microsoft documentation.
- The following hardware prerequisites are required to successfully run WSL 2 on Windows 10 or Windows 11:
- 64-bit processor withย Second Level Address Translation (SLAT)
- 4GB system RAM
- Enable hardware virtualization in BIOS. For more information, seeย Virtualization.
Also, it is noted that the following features are not supported:
- Hyper-V backend
- Windows containers
Installing Docker Desktop for Windows on ARM Beta on Snapdragon X Elite
After downloading the Beta installation for Docker Desktop for Windows on ARM Beta, I installed it on my Surface Pro 11 with the Snapdragon X Elite and Voila!
Below, you can see the 12 cores of the Snapdragon X Elite processor. Also, you can see I was able to successfully spin up an Nginx container without issue.
Wrapping up
If anyone is curious about whether or not the Windows on ARM products out there can run Docker Desktop, you will have issues if you install the x86_64 version of Docker Desktop as I did. I wish Docker would make this more clear on the main download page and list the beta version in the dropdown for Windows on ARM as I think that would help with any confusion on the subject.