首页 > 解决方案 > Kubernetes - Minikube 端口转发问题

问题描述

我是 Kubernetes 的新手,并试图在我的 Mac 机器上本地安装 Kubernetes。

我正在关注 Kubernetes 网站上的以下教程

https://minikube.sigs.k8s.io/docs/start/

现在,我正处于一个步骤,它告诉我在我的本地集群中部署简单的应用程序。我部署了它。现在,当我尝试使用以下命令访问我的服务时

minikube service hello-minikube

它启动浏览器。尽管浏览器从不显示该服务并一直挂在 127.0.0.1。

由于上述问题,我习惯了以下命令

kubectl port-forward service/hello-minikube 7080:8080

当我尝试使用 http://localhost:7080/ 启动浏览器时

我在快照中附加了错误,这是连接被拒绝的问题。 在此处输入图像描述

有人可以指导我这里出了什么问题吗?

干杯,

在下面的答案之后

我尝试了这两个命令,但浏览器一直在旋转,但从未加载过服务。这是给你的快照

在此处输入图像描述

YAML 文件 在此处输入图像描述

添加的端点 在此处输入图像描述

豆荚状态 在此处输入图像描述

添加 Docker 镜像泊坞窗图像

事件命令更新 事件命令错误

标签: kubernetesminikube

解决方案


要访问您的应用程序,请使用minikube tunnel然后通过服务器 IP 和端口的端点之一访问它。

另一种选择是通过 NodePort 类型的服务公开您的应用程序,然后使用minikube service $servicename

编辑:

只是一个快速的健全性检查,你可以尝试运行以下命令吗?

$ kubectl create deployment nginx --image nginx --port 80 
$ kubectl expose deployment nginx --name nginx-svc --type NodePort
$ minikube service nginx-svc

--> 这应该使用服务 NodePort 使用 minikube 集群的 IP 打开您的浏览器,您应该会看到 nginx 欢迎页面

您应该能够访问该服务的另一种方式是,在创建部署和服务之后:

$ minukube tunnel nginx-svc 
$ kubectl port-forward $nginx-podname 8080:80

--> 浏览到 localhost:8080 应该会显示 nginx 欢迎页面。

请检查这是否是您的设置当前的行为方式。如果您的设置中没有问题,需要进一步探索。如果是,请分享您的 yaml 资源,以便我们找到问题所在


推荐阅读