首页 > 解决方案 > 如何使用 docker 驱动程序访问 Minikube 中的 NodePort?

问题描述

我在远程机器上使用 docker 驱动程序启动了 minikube,并为特定 pod 使用了 nodePort 服务。我相信 nodePort 暴露了 minikube docker 容器上的端口。在做 minikube IP 时,它给了我运行 minikube 的 docker 容器的 IP。如何将 minnikube 容器中的端口映射到主机端口,以便我可以远程访问它。除了使用 driver=none 或重新启动 minikube 之外,另一种方法值得赞赏,因为我不想重新启动我的 spinnaker 集群。

标签: dockerkubernetescentosminikubespinnaker

解决方案


有一个 minikube service <SERVICE_NAME> --url命令将为您提供一个可以访问该服务的 URL。为了打开暴露的服务,minikube service <SERVICE_NAME>可以使用命令:

$ minikube service example-minikube
Opening kubernetes service default/hello-minikube in default browser...

此命令将在您的默认浏览器中打开指定的服务。

还有一个--url选项可以打印在浏览器中打开的服务的 url:

$ minikube service example-minikube --url
http://192.168.99.100:31167

您可以运行minikube service list以获取所有可用服务及其相应 URL 的列表。还要确保使用正确的服务指向正确的 pod selector

也尝试执行命令:

ssh -i ssh -i ~/.minikube/machines/minikube/id_rsa docker@$(minikube ip) -L *:30000:0.0.0.0:30000

看看:minikube-service-port-forwardexpose-port-minikubeminikube-service-documentation


推荐阅读