繁体   English   中英

如何安装和部署node.js应用程序?

[英]How to install and deploy node.js application?

我是node.js的新手。 在使用express,测试, .nvmrc等创建模块化项目之后,终于可以部署该应用了。 应该怎么做? 在Java中,您将项目捆绑到一个单独的文件中,该文件包含自包含文件,并以某种配置将其放入服务器中。 那node.js呢?

我是否应该将带有源代码和node_modules的整个目录复制到生产机器,并使用systemd,pm2或其他进程管理器来运行它? 但我听说某些依赖项可能是系统依赖项,因此它们可能无法正常工作

还是应该仅复制源并在生产计算机上运行npm install --production 但是这种方式只有在npm存储库在线时才可以部署。 此外,构建应用程序还需要花费时间,并且必须在集群中的所有计算机上完成。 如果出现错误,如何快速回滚到以前的版本呢? 再次,需要时间和在线npm仓库

另一个选择是构建docker映像。 但是似乎很尴尬的是,轻松,安全地部署应用程序的唯一方法是使用第三方技术

在现实生活中如何进行?

确保不要复制整个目录,尤其是node_modules。

系统上安装的所有软件包都应使用--save选项示例进行安装: npm install --save express如果这样做),则在package.json中将具有项目所需的依赖关系,无论它们是开发依赖关系还是生产依赖关系。

我不知道您的项目结构是什么样子,但是作为节点应用程序,您必须运行npm init . 在项目中设置package.json文件,然后可以使用--save开始添加依赖项。

通常我们使用git

版本控制系统

要部署到服务器,首先我们将代码推送到git存储库,然后将其从其拉到服务器git

您必须在项目中添加.gitignore,并忽略将node_modules提交到git存储库中。

然后您可以拉到服务器并在服务器上运行npm install 并确保您需要启动Web服务器来服务您的应用程序示例ngnix

您可以尝试使用Heroku进行简单的部署,您要做的就是使用Heroku设置项目,并在推送代码时由Heroku管理部署。 Heroku

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM