2017-09-02 78 views
0

***我的的NodeJS一个初学者,希望能给我一些建议,谢谢你这么多:)PROD和开发环境的NodeJS

我有一台服务器来运行我的应用程序的NodeJS(REST API)。

我的应用程序有两种环境(开发和生产), 我更新的发展相当频繁做测试, 后,我完成开发的代码,我会发布的代码到生产。

我在nodejs中使用pm2来运行应用程序。 这里是我的REST API的文件夹结构

  • RESTAPI
    • APP1
    • node_modules
    • db.js
    • .... index.js

这是我的问题: 为我的应用程序设置开发和生产环境的最佳方式是什么?

我有两个想法 理念1: 认沽PROD和DEV独立的两个文件夹,无论是听同一个端口和运行单服务 PROD:www.xxx.com:8080/app_dev/ 开发: www.xxx.com:8080/app_prod/

  • RESTAPI
    • app_dev
    • node_modules
    • db.js
    • ....
    • app_prod
    • node_modules
    • db.js
    • .... index.js

理念2: prod:www.xxx.com:8080/app/

dev:www.xxx.com:8081/app/

作为两个服务运行,侦听不同的端口。

在我的服务器,我只需要单独的2文件夹:

  • 开发

  • 督促

我可以随时更改代码在开发中,并重新启动应用程序,从不影响产品

+0

首先,我想了解你如何对待开发环境和生产环境?你正在开发不同的git分支,还是你制作了两个单独的文件来设置配置,如development.js和production.js? – amanpurohit

+0

我建议为开发和生产服务器使用两个单独的端口。这将使事情简单而灵活。 – abskmj

+0

@amanpurohit我开发不同的git分支,开发分支和主分支,完成开发后,我将合并到主分支。我合并后,我会去我的服务器和git拉生产文件夹中的最新代码,然后重新加载我的应用程序。我得到另一个文件夹是开发文件夹,我可以从开发分支git拉做测试。 –

回答

0

如果您想将您的应用程序部署到公共Web主机吨,可能会采取更多步骤。你可以看看this guide,它提出了一个使用Heroku的部署解决方案。