尽管服务公开为 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 容器。
我在 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 容器。