在vm azure中运行React应用程序

时间:2017-10-16 19:06:07

标签: javascript node.js azure azure-virtual-machine

我想在azure的虚拟机上运行我的react应用程序。我在azure的vm中启动了我的应用程序,但是当我转到vm的公共URL(DNS)时,它说网站无法访问。

这就是我在vm中启动项目所做的工作

  1. 我跑了命令ssh a ******** @ 52. *。。***
  2. 输入vm后,我克隆了git项目(React nodejs project)
  3. 然后我安装所有的软件包,如npm,node和yarn,对我的项目很重要
  4. 然后我跑了gulp命令。我的项目编译成功
  5. 现在,我尝试访问我的azure'
  6. 的公共网址(DNS)

    预期结果:访问DNS时我应该可以看到我的应用程序页面

    结果:无法访问网站

    这是项目

    中服务器文件的服务部分
    {{1}}

    https://github.com/jpf/okta-jwks-to-pem/blob/master/jwks_to_pem.py#L40

1 个答案:

答案 0 :(得分:0)

  

我在azure的vm中开始我的应用程序,但是当我去公共网址时   (DNS)vm表示无法访问网站。

您可以使用localhost访问此网站吗?请在Azure VM中对其进行测试,以确保此服务在正确的端口中运行。

我们应该将端口4200添加到Azure NSG(网络安全组)入站规则。 我们可以按照此article将端口添加到NSG 入站规则

顺便说一句,如果您要创建一个经典虚拟机,我们应该遵循此article将端口4200添加到虚拟机的端点。

此外,我们应该检查 Linux防火墙设置,确保防火墙不会阻止端口4200.

最后,我们可以使用telnet来测试网络连接。

更新

我们可以使用netstat -ant | grep 4200检查服务是否正在运行。

例如,SSH服务侦听端口22:

jason@jasonvm:~$ netstat -ant | grep 22
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0    104 10.0.0.4:22             167.220.255.8:57001     ESTABLISHED
tcp        0      0 10.0.0.4:58122          52.239.153.36:443       TIME_WAIT  
tcp        0      0 10.0.0.4:40922          168.63.129.16:80        TIME_WAIT  
tcp6       0      0 :::22                   :::*                    LISTEN 

我们也可以使用telnet进行测试,我们可以在本地PC上安装telnet,并在CMD中运行此命令,如telnet vmpublicIP 4200

如果您的服务侦听端口4200并且它正确运行,我们可以使用此命令来访问它:
curl localhost:4200