k8s-tutorials icon indicating copy to clipboard operation
k8s-tutorials copied to clipboard

nodeport类型的service无法通过node ip访问到pod

Open WswSummer opened this issue 3 years ago • 11 comments

image

WswSummer avatar Aug 30 '22 06:08 WswSummer

image

WswSummer avatar Aug 30 '22 07:08 WswSummer

多谢补充,因为我本地确实是使用的 virtualbox 启动 minikube,所以没有触发这个限制,我会再去看看下相关文档,再考虑是否把这个提醒加到 service nodeport 文档上。

guangzhengli avatar Aug 30 '22 09:08 guangzhengli

是的,如果直接使用docker desktop就会存在这个问题;然后使用virtualbox启动的详细文档也可以补充下,这样免得后面的人踩坑

WswSummer avatar Aug 30 '22 10:08 WswSummer

参考:https://blog.csdn.net/zhaopeng_yu/article/details/125810814

WswSummer avatar Sep 06 '22 07:09 WswSummer

+1;如果本地使用Docker(--driver=docker)的话,NodePort类型的Service、Ingress组件都无法通过minikube ip提供的ip地址来访问。

我提供另一种方式,可以使用docker ps,进入名为minikube的Container容器: docker exec -it minikubeContainerId /bin/bash。 然后在minikube的容器中,通过curl http://127.0.0.1:30000访问本地ip的方式,就可以成功了~

sevenleave avatar Sep 06 '22 10:09 sevenleave

+1;如果本地使用Docker(--driver=docker)的话,NodePort类型的Service、Ingress组件都无法通过minikube ip提供的ip地址来访问。

我提供另一种方式,可以使用docker ps,进入名为minikube的Container容器: docker exec -it minikubeContainerId /bin/bash。 然后在minikube的容器中,通过curl http://127.0.0.1:/30000访问本地ip的方式,就可以成功了~

确实是可以这样哦,谢谢~

WswSummer avatar Sep 06 '22 13:09 WswSummer

也能透過 minikube ssh 進入 minikube的Container容器裡 也能在裡面使用 curl http://127.0.0.1:/30000 訪問。

adam6313 avatar Nov 09 '22 05:11 adam6313

https://minikube.sigs.k8s.io/docs/handbook/accessing/#example-of-nodeport

fangjinfeng1997 avatar Dec 15 '22 09:12 fangjinfeng1997

可以使用minikube service service-hellok8s-nodeport --url公开服务

bakerwater avatar Mar 08 '23 08:03 bakerwater

我这样为啥不行

boteman0206 avatar Apr 04 '23 08:04 boteman0206

补充一下,对于ingress+type=clusterip的service也是不行滴,需要进入minikube ssh然后使用127.0.0.1才可以触发ingress的流量转发,直接使用minikube ip去调用ingress不行

补充:使用:https://github.com/chipmk/docker-mac-net-connect 这个就可以,装完了重启一下就好

SuanCaiYv avatar May 08 '23 09:05 SuanCaiYv