Cannot start docker after installation on Windows

WindowsDockerVirtual Machine

Windows Problem Overview


I am a new to Docker. After the installation of Docker Toolbox (OS: Windows 10) I run Docker Quickstart Terminal and in the console I see this:

Running pre-create checks...
Error wirh pre-create check: "Hyper-V is installed. VirtualBox won't boot a 64bits VM when Hyper-V is activated. It it's installed but deactivated, you can use --virtualbox-no-vtx-check to try anyways"
Look like something went wrong in step 'Checking if machine default exists'...
Press any key to continue...

What did I do wrong? All checking of system and install steps are taken from here.

Thank you very much for your help!

Windows Solutions


Solution 1 - Windows

Hyper-V and VirtualBox are conflicting each other.

You can either uninstall Hyper-V or run

docker-machine create -d virtualbox --virtualbox-no-vtx-check test

Source

Solution 2 - Windows

Docker supports Hyper-V as the driver

You need to perform the following steps:

  • Create a virtual switch, refer to this article on how to do that

  • Create a docker machine using that network switch and hyper-V driver.

     docker-machine create -d hyperv --hyperv-virtual-switch "name of the virtual switch created above" default
    

Solution 3 - Windows

I got the same error when I installed Docker Toolbox on my Windows 10 machine.

Solution:

  1. Install Docker Community Edition (not Docker Toolbox)
  2. Enable Hyper-V

Open Control Panel -> System and Security -> Programs (left panel) -> Turn Windows features on or off -> Check the Hyper-V box

As of 2017's Win 10, if you don't have Hyper-V option, then your Windows OS is not Enterprise Edition. Also, Docker seems to work a lot better on Intel processors (not AMD).

  1. Add C:\Program Files\Docker\Docker\resources\bin to Path in Environmental Variables.
  2. Open Git Bash and type docker-compose up and now that command should work.

If you don't have GitBash, please download it.

Solution 4 - Windows

I was having the same issue, and this blog post solved it. The author runs you through the steps of adding the --virtualbox-no-vtx-check flag to the docker shell script.

Virtualbox and Hyper-V don't play well together. I am NOT the author.

Solution 5 - Windows

I set the Hyper-V off using windows feature on off and it worked for me.

Solution 6 - Windows

See if when you run:

docker-machine create -d hyperv --hyperv-virtual-switch "Virtual Switch" default

you get Error with: pre-create check: "Hyper-V PowerShell Module is not available"

If so just enable in Docker(icon on your desktop)->settings->expose daemon on TCP ...

Solution 7 - Windows

You need to disable Hypervisor to check new application that use VT-x before the virtual machine launch:

  1. Open the command prompt as Administrator

  2. Run bcdedit to check hypervisor status:

  3. Check hypervisor launch type.

  4. If is set to auto then disable it:

     bcdedit /set hypervisorlaunchtype off 
    
  5. Reboot host machine and launch VirtualBox again

After performing above steps I opened again Docker Quickstart terminal and it is working fine.

Solution 8 - Windows

I pressed the Windows Button on keyboard. Typed 'Hyper-V Manager'. It opened the 'Hyper-V Manager'. Then I right clicked on my machine name. There was an option to 'stop'. I selected this option. It stopped the 'Hyper-V' on my machine and then Kitematic worked fine, i.e., it download the hello-world-nginx and displayed the web page.

NOTE: This is strange and I am not sure why. Once I have done above steps, now when I restarted the Hyper-V using Hyper-V Manager, Kitematic is still working and downloading images. Can anybody comment why it is now still working when Hyper-V is also running ? Thank you.

Good Ali Ahsan

Solution 9 - Windows

The solution as suggested by @Gene is correct and works perfectly if:

  1. One has windows pro edition
  2. Both Hyper-V Management Tools and Hyper-V Platform are enabled

Sometime this isn't always the case; here is what to do:

Check Windows Edition:

To check which version right click on Windows key and select System. Scroll down to Windows specifications and look at [Edition]

Check Hyper-V Platform (virtualisation)

For Hyper-V Platform to be enabled one must turn on virtualisation; normally this is done via the BIOS.

On HP laptop one this is done from the BIOS.

  • On start-up click Ctrl+F10
  • Press the right arrow key to System Configuration tab.
  • Select Virtualization Technology and then press the Enter key.
  • Select Enabled and press the Enter key.

Once these steps are done then:

  1. Search for Turn Windows features on or off.
  2. Scroll down to Hyper-V
  3. Tick this box (Ensure you see a tick NOT a black box which indicates some features not enabled)

Upon restart docker should be running... good luck !!

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionDenis StarkovView Question on Stackoverflow
Solution 1 - WindowsArgonQQView Answer on Stackoverflow
Solution 2 - WindowscuriousgeekView Answer on Stackoverflow
Solution 3 - WindowsGeneView Answer on Stackoverflow
Solution 4 - Windowscph2117View Answer on Stackoverflow
Solution 5 - WindowsScarletAndGrayView Answer on Stackoverflow
Solution 6 - Windowsshiraz laviView Answer on Stackoverflow
Solution 7 - WindowsSuresh VView Answer on Stackoverflow
Solution 8 - WindowsMuhammad Ali AhsanView Answer on Stackoverflow
Solution 9 - WindowsItharView Answer on Stackoverflow