3

当我将我的应用程序部署到 AWS 时,它会被复制到一个新目录中,因此 NPM 将在每次部署期间安装所有相同的包,这可能会花费很多时间。大多数这些包在构建之间没有改变(如果有的话),所以让它做一个完整的 npm-install 似乎是一种浪费。

我的应用服务器运行着一堆不同的 Node 应用,所以不能全局安装。相反,我想让应用程序将它的节点包存储在部署期间不会被清除的位置,但可以选择在npm install.

NPM 是否有一个位于应用程序子文件夹中的特定于应用程序的模块目录的概念?这样我就可以删除 app 文件夹,而不必一遍又一遍地重新安装相同的软件包。

我可以通过使用符号链接或迁移当前的 node_module 目录来实现这一点。

4

1 回答 1

3

如果你锁定你的依赖版本,NPM 可能会缓存这些包。所以安装时间不会太长。

如果您不想这样做,您可以全局安装依赖项并将它们与npm link命令链接(这基本上是自己创建符号链接!)。然后,由您定期更新全局安装的软件包。

于 2013-08-08T11:54:33.330 回答