简体   繁体   中英

Cannot start docker after installation on Windows

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!

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

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

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.

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.

我使用关闭的 Windows 功能将 Hyper-V 设置为关闭,它对我有用。

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 ...

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.

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, ie, 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

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 !!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM