我在过去几个月里一直在学习Node,现在有一个复杂的应用程序。我的问题是,我想让它重复使用,因为我是一个完整的菜鸟,我从一开始就没有想到这一点。
我有什么:
使用pm2作为守护程序运行的复杂节点/快速应用程序。
许多子进程脚本,有些在Node中,有些使用casperjs / phantomjs
数据库凭据,服务器端口等的配置文件
许多npm依赖项,一些用于应用程序本身,一些仅由子进程使用。 应用程序本身运行正常,每个路径都存储在配置文件中,因此部署不应太难。
我想做什么:
我的问题:
我是否需要将node_modules添加到我的git repo中?
如何以最简单的方式集成应用程序部署,安装依赖项以及安装pm2,phantom和casper?我不介意制作一个剧本,但我真的不知道从哪里开始或最佳实践。我在网上看到的大部分内容都与nodejitsu / heroku有关,并不适用。
我的缺点:
希望我的问题是可以理解的,谢谢大家!
编辑:
我到目前为止:
仍在尝试弄清楚如何包含外部依赖项。
答案 0 :(得分:3)
部署的一种方法是添加命令的安装列表:
apt-get install npm ...
npm install -g pm2
npm install
和npm update
config.example.json
复制到config.json
并将其更改为您的需求pm2 index.js
不应将node_modules文件夹添加到git repo。您应该将所有项目节点依赖项添加到package.json文件中,npm install
/ npm update
应该完成其余的工作。
答案 1 :(得分:0)
您可以使用Capistrano轻松完成所有部署任务。它是用Ruby编写的,但您可以使用它来部署任何您想要的东西,包括Node.js应用程序。
您可以找到很多examples和integration modules。