如何确认minikube正在使用hyperkit

3
当我尝试使用hyperkit运行minikube时,出现了有关未安装xhyve的错误。我安装了它,并重新运行了minikube start --vm-driver hyperkit,没有任何问题。
我认为hyperkit是xhyve的替代品,而不是补充物。
当我运行ps时,我看到com.docker.hyperkitdocker-machine-driver-xhyve都在运行。
如何确认minikube正确使用hyperkit?
4个回答

12

Docker for Mac在过去几年中多次更改虚拟化层,这可能会在更新环境后使用户感到困惑。

如果进程列表显示同时存在com.docker.hyperkitxhyve进程,则很可能是由于以前使用docker-machine-driver-xhyve设置的docker-machine环境。

您可以考虑通过以下方式清理安装:

  • 停止 Docker(从命令行或托盘图标),
  • 然后删除使用docker-machine工具创建的机器。

我还建议使用以下命令删除当前的minikube安装:

minikube stop && minikube delete

并开始一个全新的:

minikube start --v=10 --vm-driver=hyperkit" 

这将会增加构建minikube环境的详细输出。


2
那看起来比我的答案更准确。+1 - VonC

6

这将为您提供当前机器的当前驱动程序。如果您正在使用--profile标志,请用您的配置文件名称替换第二个"minikube"。

$ cat ~/.minikube/machines/minikube/config.json | grep DriverName


1

奇怪的是,考虑到Hyperkit最终应该替换xhyve。

确保已经构建/安装了Hyperkit并且被您的PATH引用。
并且您正在使用最新的Mac版docker-ce


1
使用此命令获取运行有 hyperkit 的每个 hypervisor 实例的列表:
$ ps -ef | grep hyperkit

如果 minikube 在 hyperkit 中运行,则名称“minikube”应出现在输出中:
0 29305     1   0 Tue06PM ??       515:01.32 /usr/local/bin/hyperkit -A -u -F /Users/me/.minikube/machines/minikube/hyperkit.pid -c 2 -m 2000M -s 0:0,...

“com.docker.hyperkit” 标记的实例是 Docker 使用的进程,并不是 minikube 实例。”

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