我见过的大多数本地 Kubernetes 开发教程都使用 Minikube。在最新的 Windows 版 Docker Edge 版本中,您还可以启用 Kubernetes。我正在尝试了解两者之间的差异以及我应该使用哪一个。
kubectl apply -f http://...
。 minikube ip
来获取入口的集群 IP 地址,如何使用 Windows 版 Docker 执行此操作?我觉得您基本上了解了这个领域,并且大多数已经回答了您的问题。您可能会发现 Docker for Mac vs. Docker Toolbox 是一本内容丰富的读物,即使它是关于 Mac 等效项而不是 Windows,以及关于打包为 VM 而不是专门针对 Kubernetes 的 Docker。
文档的一部分:
Kubernetes 仅在适用于 Windows 18.02 CE Edge 的 Docker 中可用。 适用于 Windows 18.02 CE 的 Docker 中不包含 Kubernetes 支持 稳定的。了解有关稳定通道和边缘通道的更多信息以及如何 在它们之间切换,请参阅常规配置。如果您有足够的 CPU 和 RAM 资源,您可以轻松地在同一台计算机上同时拥有Docker for Windows 18.02 CE Edge 包含独立的 Kubernetes 服务器和客户端,以及 Docker CLI 集成。库伯内特斯 服务器在您的 Docker 实例中本地运行,不可配置, 并且是单节点集群。
Kubernetes 服务器在本地的 Docker 容器中运行 系统,仅用于本地测试。当 Kubernetes 支持时 启用后,您可以在 Kubernetes 上并行部署工作负载, Swarm,以及作为独立容器。启用或禁用 Kubernetes 服务器不会影响您的其他工作负载。
请参阅
Docker for Windows > 入门以启用 Kubernetes 和 开始测试 Kubernetes 上工作负载的部署。
minikube
和
docker-for-desktop
,并通过选择上下文在它们之间切换,例如:
> kubectl config get-contexts
> kubectl config use-context docker-for-desktop
目前没有地方可以为
docker-for-desktop 选择 Kubernetes 版本。它已在 Docker 发行包中预选。
不幸的是,minikube 内的 docker 版本比 docker 网站上的版本落后了一步,并且某些功能可能会缺失,但如果你对 Kubernetes 环境感兴趣,在大多数情况下这并不重要。
Kubernetes 的某些功能依赖于外部资源,本地安装时可能无法使用。例如,您需要能够创建云负载均衡器才能使用某些类型的Ingress
或
Service
对象。但是其他资源可以在
minikube
内轻松启动,或使用
docker-for-desktop
kubectl create/apply
。要向外部公开集群资源,您可以使用