尽管服务公开为 NodePort,但 Kubernetes 连接被拒绝

Kubernetes connection refused although service is exposed as NodePort

我在 kubernetes 上有一个 angular 服务器 运行。如果我这样做

kubectl logs angular-pod-8d5586f44-q2jz3,

我在底部得到了众所周知的

ℹ 「wdm」: Compiled successfully.

此外,我还在端口 4200 上将服务作为 NodePort 公开,如下几行证明:

angular-client    NodePort    10.102.59.116    <none>        4200:32396/TCP   6s.

但是,当我尝试

时收到连接被拒绝的错误
curl 10.102.59.116:4200
curl: (7) Failed to connect to 10.102.59.116 port 4200: Connection refused.

有没有人也遇到过这个问题并且知道如何解决?

顺便说一下,我使用 vagrant 和 virtualbox 作为虚拟机。

如果您正在使用 angular-cli,则必须 运行 ng serve --host 0.0.0.0 以便 angular cli 公开 angular-life -服务器。 但是, 推荐出于生产目的这样做,因为 angular-life 服务器未针对安全问题进行全面审查,仅作为开发工具使用。要部署您的 angular 应用程序用于生产,最好进行生产构建 (ng build --prod) 并将结果部署在例如一个 nginx 容器。