是否有可能有一个单独的节点

我有一个Node应用程序,我正在部署到Heroku。 他们的文档说最好的做法是检查你的node_modules目录(即不要 gitignore它),更快的部署和dev / prod奇偶校验。

在我的package.json ,我有大量的devDependencies (主要是Grunt插件和他们的所有代码)以及像Express一样的一些常规生产dependencies 。 Heroku只需要生产部门。 我宁愿不检查我所有的开发代理,因为它们大约有50MB。

有什么办法可以为你的开发人员提供一个单独的文件夹,例如node_modules_dev ? 如果这是可能的,那么我可以将node_modules_dev添加到我的.gitignore ,并根据Heroku的建议检入常规生产node_modules目录。

有没有办法做到这一点? 或者你能想出另一种方法去做我想做的事情吗?


我使用CI服务器来构建,测试和部署我的文件 - 所以我一直在寻找一种类似的解决方案,以防止我需要在Heroku上部署额外的依赖关系和/或重新构建。

在我的所有测试运行完毕后,我运行npm prune --production, devDependenciesnode_modules中删除node_modules ,然后将结果推送到Heroku。

没有额外的文件进入服务器,并且部署时间更快,因为Heroku不必构建通常在Gulp / Grunt插件中找到的所有二进制文件。


如果你不介意检查它们,你唯一的担心就是产生的中断大小(例如:不是你的git repo大小,或者是将该repo转移到Heroku),那么只需将相关的node_modules添加到.slugignore

文档:使用.slugignore忽略文件。

链接地址: http://www.djcxy.com/p/14901.html

上一篇: Is it possible to have a separate node

下一篇: Mysql: Order by max N values from subquery