I was setting up my new machine the other day and one of the first things I did was get Docker Desktop. I grabbed this and enabled Hyper-V at the same time. When I rebooted, I had some errors, so I thought perhaps I hadn’t really enabled the Windows Subsystem for Linux and Hyper-V correctly before getting Docker running. That shouldn’t matter, but I decided to uninstall Docker Desktop, reboot, and be sure things were running.
Once I had Hyper-V running and I connected to my local WSL, I reinstalled Docker Desktop, but still saw lots of this:
Unable to create Hyper-V VM
There were other errors, like the Docker.Core.Backend.BackendDestroyException, but the main problem seemed (to me) to be a Hyper-V issue.
Checking the Hyper-V console showed no VMs created. Hmmm, what do I do?
I tried to “Quick create” a VM, but that wizard failed. I didn’t really want to make a VM at this time, so I hesitated here, but I shouldn’t have. After searching around more, I came back and tried to ensure that I could create a VM.
It was at this time that I noticed the default location for my Hyper-V vms was s:virtual. I don’t have an “S:“ drive, so I was suspicious. Checking the disk location, I saw the same thing.
This might make sense if scripting was using defaults to set up a new VM. I manually set the defaults in Hyper-V to be folders on my C: drive. Then I had Docker go back to default settings, and it worked. No errors on startup, the Docker icon in the status bar, and I could pull and start a container.
Good to know.
Not sure why this was an issue. This was (supposedly) a clean, new install of Windows. Strange, but something worth checking if you have issues.