I’m having trouble starting docker. Every time I try to start it, I get this message:
Error invoking remote method ‘docker-start-container’: Error: (HTTP code 500) server error - hcsshim::CreateComputeSystem ce90661a3dbd552b8226491dec815d8ec75f6997a0adfbceee8a1b97a49af9de: The virtual machine could not be started because a required feature is not installed.
All my research indicates this is a hyper-v issue. The problem is, its installed/running (I think). In the BIOS, both these options are enabled:
Intel Virtualization Tech
Intel VT-D Tech
And in windows features, all of these two options are installed (along with all the sub-options):
Containers
Hyper-V
Is there something I’m missing here?
A little extra information:
I also run virtualbox on this desktop.
I am running docker on the desktop - not in the virtualbox image.
I have had docker working before on this desktop (6+ months ago)
There was an issue which prevented me running both virtualbox and docker with the same windows and/or bios settings. But for the life of me I forget what they where.
There might be some conflict between VirtualBox and Hyper-V. There can only be one virtualization platform on Windows, which takes over the virtualization process from the CPU. Docker relies on Hyper-V, so my guess is that Hyper-V itself might be having issues.
Virtualbox is a Type 2 hypervisior and as such can not take over virtualization. It will always draw the short straw if Hyper-V (or any of its sub-features) is enabled. Virtualbox requires the “Windows Hypervisor Platform” feature enabled to work at all and indicate it with the infamous “green turtle” icon on the virtual machine console (if you have no idea what it means, please google it - whenever it is shown Virtualbox will run unbearable slow).
Even if the Hyper-V feature is not enabled, enabling the “virtual machine platform” required by WSL will result in VirtualBox being run in Hyper-V compatibility mode.
Bear with me if the Windows features should have slightly different names on your host, as I am translating the names from my German Windows into English.
I decided to test hyper-V, by creating a virtual machine in hyper-V manager. This seemed to go well, until I tried to start the VM, where I was told that hypervisor was not running.