Hyper-v和VirtualBox在Minikube的Docker中存在冲突

10

我试图在 Windows 10 企业版上使用 Minikube 扩展我的 Docker 容器。然而,我遇到了一些 Hyper-V 和 VirtualBox 的冲突。我知道 Docker 需要 Hyper-V 正确运行,而 Minikube 需要 VirtualBox 运行(如果启用 Hyper-V,则会显示错误)。

C:\WINDOWS\system32>minikube start
Starting local Kubernetes v1.10.0 cluster...
Starting VM...
Downloading Minikube ISO
160.27 MB / 160.27 MB [============================================] 100.00% 
0s
E0822 11:42:07.898412   13028 start.go:174] Error starting host: Error 
creating host: Error executing step: Running precreate checks.
: This computer is running Hyper-V. VirtualBox won't boot a 64bits VM when 
Hyper-V is activated. Either use Hyper-V as a driver, or disable the Hyper-V 
hypervisor. (To skip this check, use --virtualbox-no-vtx-check).

如果我禁用Hyper-V,我可以成功启动minikube,但是Docker无法工作并显示启用Hyper-V的错误信息。

我还尝试使用Hyper-V驱动程序运行minikube,但仍然遇到此错误:

C:\WINDOWS\system32>minikube start --vm-driver hyperv
Starting local Kubernetes v1.10.0 cluster...
Starting VM...
E0822 11:44:32.323877   13120 start.go:174] Error starting host: Error 
creating host: Error executing step: Running precreate checks.
: no External vswitch found. A valid vswitch must be available for this 
command to run. Check https://docs.docker.com/machine/drivers/hyper-v/.

这有什么解决办法吗?
4个回答

4
我也尝试使用Hyper-V驱动程序运行minikube,但仍然遇到此错误: 在他们的文档中有一个明确的关于HyperV和vswitch情况的警告:https://github.com/kubernetes/minikube/blob/v0.28.2/docs/drivers.md#hyperv-driver 尽管在minikube的辩护中,它也确实说了,在URL的最后,应该阅读关于--hyperv-virtual-switch标志的内容,还应提供--vm-driver=hyperv。 导航到链接的docker页面,它甚至提供了一个带有屏幕截图示例的逐步操作说明。

1
下一步解决了我的问题:

> minikube start --vm-driver=hyperv -v 9999

如果出现以下错误:

Error: [HYPERV_NO_VSWITCH] create: precreate: no External vswitch found. A valid vswitch must be available for this command to run

请手动创建一个交换机。

enter image description here


0

我有一个类似的问题,下一个命令解决了这个问题:

minikube delete

0

尝试这个...

确保 Docker 正在运行

打开 Hyper-V 管理器

进入 Hyper 开关管理器

为内部使用创建一个新的虚拟开关

例如,将其命名为 switch01,然后按应用或确定

enter image description here

然后在命令提示符或 PowerShell 中执行以下命令:

minikube delete

minikube start --hyperv-virtual-switch=switch01

docker-machine create -d hyperv --hyperv-virtual-switch switch01 default


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接