首页 > 解决方案 > How to run Kubernetes and Docker at the same time on Windows 10 Pro?

问题描述

I would like to run Docker instances in my local Kubernetes cloud.

I activated Hyper-V on my Windows 10 Pro to accommodate for Docker. Docker runs fine, I can use the CLI perfectly.

Now I'm trying to run Kubernetes / Minikube. Unfortunately, Minikube gives me an error if I have Hyper-V activated.

If I deactivate Hyper-V and reboot, Docker says that it cannot run without Hyper-V. That seems like a conundrum.

Any tips or suggestions to have both running? I'd like to spin docker images in my local Kubernetes cluster.

Thanks!

标签: windowsdockerkubernetescontainershyper-v

解决方案


似乎您对虚拟机管理程序的使用有疑问。我在我最近的一个答案中解释了有关相互使用 Docker 和 Kubernetes 的详细信息,我将在下面链接。

  • 你不能在 Docker 和 minikube 中一起使用 Kubernetes(或者如果你使用上下文,也许你可以,但我还没有测试过,为了简单起见,假设你不能)。如果您将 Docker 用于您的 k8s 集群,您将使用 kubectl 与您的集群进行交互,不需要使用 minikube。只需转到 Kubernetes -> 在 Docker 应用程序中启用 Kubernetes 并根据 Docker 文档使用它,这里这里在 Kubernetes 部分在此处输入图像描述

  • 如果要使用 Docker for Windows 和 minikube,则必须在运行 minikube start 时指定参数。在您的情况下,您需要使用标准方式为 Windows 运行 minikube。例如,您可以按照本指南进行操作。当您准备好设置时,minikube start --vm-driver hyperv --hyperv-virtual-switch "vSwitch name" 请注意 Hyper-V 应该是唯一处于活动状态的管理程序。 你可以像以前一样继续使用 Docker。

  • 第三种选择是为您的容器使用 Docker Toolbox,为 minikube 使用 VirtualBox,我在此答案中详细解释了这一点,但如果您没有特定需求,则不推荐使用此设置。

所以这里的重要部分是决定你想要使用哪些工具。更重要的一件事,你现在可能会遇到错误,它们可能与 minikube 的剩余部分有关。因此,在进一步操作之前,请记住将 Docker 恢复为出厂默认设置,如果遇到错误,请删除 .minikube 和 .kube。


推荐阅读