如何从主机访问我的虚拟机上的 Node Js App?

From hostmachine, how to access NodeJs App on my Virtual Machine?

我有以下内容:

  1. Windows 10 OS -- 主机
  2. Oracle VirtualBox -- 来宾计算机
  3. 一个linux服务器(ubuntu)
  4. Minikube 在 Ubuntu 上用于 Kubernetes

我已经编写了一个简单的 nodejs 应用程序,它应该 运行 在虚拟框内的端口 8087 上。 nodeapp 通过 kubernetes 服务公开,然后我使用“kubectl port-forward”将请求转发到 kubernetes nodejs pod。

现在,如果我从我的客户机 (ubuntu) 执行 curl localhost:9000,我会从 nodejs 应用程序收到响应。但是,当我尝试从我的主机 (windows) 执行 curl 时,我没有得到任何响应。我已经使用 NAT 连接和端口从我的主机转发到端口 9000 上的客户机。任何人都可以帮助我为什么我无法访问我的 hst 机器上的 9000 端口?

好的,找到原因了,我不得不使用地址转发 kubectl:

kubectl port-forward  --address 0.0.0.0   hello-node-7797cfb8cb-7nkfk 9090:8087

现在我可以访问我的 nodejs 应用了