首页 > 解决方案 > 同一系统上的两个不同项目,具有不同的节点版本

问题描述

我从事两个不同的项目。一种是使用 AngularJS,包依赖于 node v4.2.0。高于该节点版本的任何内容都会破坏应用程序,所以基本上我坚持使用该版本。

最近我开始使用 Angular(特别是 6)开发一个新应用程序,并且我安装了最新的节点版本(v8.11.3)。

每当我在开发过程中切换到任何项目时,我都会使用 nvm for windows 使用以下命令:

问题是,当我在服务器上部署应用程序时。如何使用不同的节点版本同时运行两个应用程序?

标签: node.jsangularnvm

解决方案


假设您仅限于单个服务器,理想情况下您将在其自己的 Docker 容器中运行每个应用程序,保持节点版本隔离。

如果这不是一个选项,您可以使用该nvm run命令来定位特定版本,而无需切换节点变量:

对于您的角度应用程序:

nvm run 4.2.0 your-angular-app.js

对于另一个应用程序:

nvm run 8.11.3 your-other-app.js

推荐阅读