在 Windows 安装后无法启动 docker

Cannot start docker after installation on Windows

我是 Docker 的新手。安装 Docker Toolbox (OS: Windows 10) 后,我 运行 Docker Quickstart Terminal 和控制台中我看到了这个:

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

我做错了什么?所有系统检查和安装步骤均来自 here

非常感谢您的帮助!

Hyper-V 和 VirtualBox 相互冲突。

您可以卸载 Hyper-V 或 运行

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

Source

我遇到了同样的问题,this 博客 post 解决了它。作者将带您完成将 --virtualbox-no-vtx-check 标志添加到 docker shell 脚本的步骤。

Virtualbox 和 Hyper-V 不能很好地协同工作。我不是作者。

Docker supports Hyper-V as the driver

您需要执行以下步骤:

  • 创建一个虚拟交换机,参考this article如何操作

  • 使用该网络交换机和 hyper-V 驱动程序创建 docker 机器。

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

我使用 windows 功能关闭了 Hyper-V,它对我有用。

我在 Windows 10 机器上安装 Docker Toolbox 时遇到了同样的错误。

解决方案:

  1. 安装 Docker Community Edition(不是 Docker 工具箱)
  2. 启用 Hyper-V

打开控制面板 -> 系统和安全 -> 程序(左面板)-> 打开或关闭 Windows 功能 -> 选中 Hyper-V 框

截至 2017 年的 Win 10,如果您没有 Hyper-V 选项,那么您的 Windows OS 不是企业版。此外,Docker 似乎在 Intel 处理器(不是 AMD)上运行得更好。

  1. 将 C:\Program Files\Docker\Docker\resources\bin 添加到环境变量中的路径。
  2. 打开 Git Bash 并输入 docker-compose up 现在该命令应该可以工作了。

如果您没有GitBash,请下载。

看看当你 运行:

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

你得到Error with: pre-create check: "Hyper-V PowerShell Module is not available"

如果是这样,只需在 Docker(桌面上的图标)->设置->在 TCP 上公开守护程序 ...

我按下了键盘上的 Windows 按钮。输入 'Hyper-V Manager'。它打开了'Hyper-V Manager'。然后我右键单击我的机器名称。有一个选项 'stop'。我选择了这个选项。它在我的机器上停止了 'Hyper-V' 然后 Kitematic 工作正常,即它下载了 hello-world-nginx 并显示了网页。

注意:这很奇怪,我不确定为什么。完成上述步骤后,现在当我使用 Hyper-V 管理器重新启动 Hyper-V 时,Kitematic 仍在工作并下载图像。有人可以评论为什么当 Hyper-V 也是 运行 时它现在仍然有效吗?谢谢。

好 阿里阿山

@Gene 建议的解决方案是正确的,并且在以下情况下完美运行:

  1. 一个有 windows 专业版
  2. 同时启用 Hyper-V 管理工具和 Hyper-V 平台

有时情况并非总是如此;这是要做的事情:

检查Windows版本:

要检查哪个版本,请右键单击 Windows 键和 select 系统。 向下滚动到 Windows 规格并查看 [Edition]

检查 Hyper-V 平台(虚拟化)

要启用 Hyper-V 平台,必须打开虚拟化;通常这是通过 BIOS 完成的。

在 HP 笔记本电脑 1 上,这是从 BIOS 完成的。

  • 在启动时单击 Ctrl+F10
  • 按向右箭头键转到“系统配置”选项卡。
  • Select虚拟化技术然后按回车键。
  • Select启用并按回车键。

完成这些步骤后:

  1. 搜索打开或关闭 Windows 功能。
  2. 向下滚动到 Hyper-V
  3. 勾选此框(确保您看到的是勾号而不是表示某些功能未启用的黑框)

重启后 docker 应该是 运行...祝你好运!!

您需要禁用 Hypervisor 以在虚拟机启动前检查使用 VT-x 的新应用程序:

  1. 以管理员身份打开命令提示符

  2. 运行 bcdedit 检查管理程序状态:

  3. 检查管理程序启动类型。

  4. 如果设置为自动则禁用它:

    bcdedit /set hypervisorlaunchtype off 
    
  5. 重启主机并再次启动 VirtualBox

执行上述步骤后,我再次打开 Docker 快速启动终端,它工作正常。