如何使用两个不同的节点版本运行两个不同的nodejs应用程序[关闭]

Posted

技术标签:

【中文标题】如何使用两个不同的节点版本运行两个不同的nodejs应用程序[关闭]【英文标题】:How to run two different nodejs applications with two different node version [closed] 【发布时间】:2019-12-31 07:55:50 【问题描述】:

我们有两个节点 js 应用程序。这两个应用程序不能在同一个node版本下工作,一个应用程序只工作在node4.8.3另一个应用程序只工作在node10.15.1。

我们如何在同一台服务器上同时运行不同的 Node.js 版本?

【问题讨论】:

How can I change the version of npm using nvm?的可能重复 一种选择是使用 docker。 【参考方案1】:

使用 NVM 安装两个不同版本的 nodejs。然后在运行时切换到相应的节点版本。

【讨论】:

是的,很好,使用NVM我们可以切换node js版本但不能同时运行两个node版本。 那么你必须使用把你的应用程序放在像 docker 容器这样的容器中,这样就不是问题了【参考方案2】:

您可以使用 docker 同时运行多个 Nodejs 版本。 这可能对您有用: https://nodesource.com/blog/containerizing-node-js-applications-with-docker

https://blog.hasura.io/an-exhaustive-guide-to-writing-dockerfiles-for-node-js-web-apps-bbee6bd2f3c4/

互联网上还有其他有用的资源可用于在 docker 上将 Node 应用程序容器化。

Docker 在这里可能是一个更好的选择,但如果您不想使用 docker,您可以使用 nvm run 命令来定位特定版本,而无需切换节点变量:

nvm run 4.8.3 nodeapp1.js

对于其他节点版本:

nvm run 10.15.1 nodeapp2.js

永远使用:

forever start -c /home/ubuntu/.nvm/v10.15.3/bin/node nodeapp1.js

forever start -c /home/ubuntu/.nvm/v4.8.3/bin/node nodeapp2.js

【讨论】:

感谢您的回答,没有docker还有其他方法吗?请分享您的选择 感谢您的回复,它适用于两个不同的版本,我一直使用以下命令与节点一起使用。谢谢你。 forever start -c /home/ubuntu/.nvm/v10.15.3/bin/node nodeapp1.jsforever start -c /home/ubuntu/.nvm/v4.8.3/bin/node nodeapp2.js

以上是关于如何使用两个不同的节点版本运行两个不同的nodejs应用程序[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

spritekit 如何在两个不同的节点上转换两个 SKAction

NodeJS Express - 同一端口上的两个 NodeJS 实例(vhost)

VSCode:终端使用与启动/调试器不同的nodejs版本

NodeJS 上传文件 100% cpu 使用率

从nodejs中mongodb的两个不同集合中获取数据

从nodejs中mongodb的两个不同集合中获取数据