我有一个节点项目,我在本地运行并部署到CentOS服务器。我有一些依赖项,其中一个依赖于编译的依赖项。
使用npm,我可以使用npm install在本地编译依赖项,它会很好用。但是,这不是为部署服务器编译的,因此如果上载它将会中断。
我可以在CentOS框上编译依赖项,它可以在服务器上运行,但它会在本地环境中中断。
任何人都可以想到一个解决方法,以便我可以强制节点使用本地环境中的全局依赖项,以及服务器上的本地依赖项吗?
谢谢!
更新
我现在想办法做到这一点,它并不优雅,但它有效:
require()
路径./node_modules_local
。答案 0 :(得分:2)
检入依赖项的源代码(已编译的依赖项和仅js-only-dependencies)。部署应用程序时,在服务器上运行“npm rebuild”。这似乎是官方推荐的方式。有关详细信息,请参阅http://www.mikealrogers.com/posts/nodemodules-in-git.html