在Windows容器模式下初始化Docker时Kubernetes服务不可见

x8diyxa7  于 2023-08-03  发布在  Kubernetes
关注(0)|答案(2)|浏览(96)

我正在测试Docker for Windows中的并行Windows/Linux容器实验特性,一切进展顺利。我可以在系统设置为使用Windows容器时创建Linux容器。我在Kubernetes Jmeter 板中看到我的ReplicaSets、Services、Deployments等,所有状态指示灯都是绿色的。问题是,当Docker设置为Windows容器模式时,我的外部服务端点似乎无法解析任何东西。然而,有趣的是,如果我在Linux模式下创建所有Kubernetes对象,然后切换到Windows模式,我仍然可以访问所有服务和它们背后的Linux容器。
我的大部分谷歌搜索都让我发现了服务和Kubernetes的错误,但这似乎没有任何我可以报告的错误。是否有一个必须设置的配置才能使其工作?或者这仅仅是运行实验功能的一种危险?
Docker Desktop 2.0.0.3
Docker Engine 18.09.2
Kubernetes 1.10.11

7kqas0il

7kqas0il1#

只是为了证实你对实验特征的想法:
实验性功能不适用于生产环境或工作负载。它们本来是用来进行新想法的沙盒实验的。一些实验性功能可能会被纳入即将发布的稳定版本中,但其他功能可能会被修改或从后续的Edge版本中提取,并且永远不会在稳定版本中发布。
请考虑其他步骤来解决此问题:
包含Kubernetes客户端命令kubectl,并将其配置为连接到本地Kubernetes服务器。如果您已经安装了kubectl并指向其他环境,例如minikube或GKE集群,请确保更改上下文,以便kubectl指向docker-for-desktop

> kubectl config get-contexts
> kubectl config use-context docker-for-desktop

字符串
如果您通过其他方法安装了kubectl,并遇到冲突,请删除它。
若要开启Kubernetes支持,并安装一个独立的Kubernetes示例作为Docker容器运行,选择Enable Kubernetes,然后单击Apply and restart按钮

默认情况下docker service ls等命令对Kubernetes容器是隐藏的,因为不支持手动管理。要使它们可见,请选择“显示系统容器(高级)”,然后单击“应用”并重新启动。大多数用户不需要此选项。

还请验证系统要求。

r6hnlfcb

r6hnlfcb2#

我在使用Docker Windows时遇到了类似的问题。我意识到我们需要通过点击windows托盘右键单击docker切换到linux,如下所示:


的数据
请注意,如果您之前的镜像是在windows上,则需要在切换到linux后运行相同的过程,然后继续使用您的Kubernetes kubectl

相关问题