linux 中部署不同版本 node.js 并同时使用的方案

2018年3月28日

linux 中部署不同版本 node.js 并同时使用的方案


1. 首先使用压缩二进制包解压到 /usr/local/node/ ,比如产生一个 /usr/local/node/node-v8.9.3-linux-x64
2.安装多个不同的二级制包,产生 /usr/local/node/node-v4.5.3-linux-x64 /usr/local/node/node-v6.9.3-linux-x64 之类的不同的文件夹
3.使用 ln -s /usr/local/node/node-v8.9.3-linux-x64/bin/node /usr/local/bin/node@8 这样的软链接命令将各种不同的版本用不同的标识区分开
4.使用的时候,直接使用 node@8 server/app.js 这样启动,就可以使用指定版本的 node
5. 也可以直接写在 package.json 中的 script 中, 比如
"scripts" : {
"start" : "cross-env NODE_ENV=production node@8 server/app.js"
}
上面的是比较简单的方式。但是有时候需要用 pm2 这样的进程管理器来启动,这时候就需要复杂一点的方法,需要使用 shell 文件启动。
首先创建一个环境配置文件 config.cfg 内容如下
PATH =/lsw/node/node-v8.0.0-linux-x64/bin:$PATH
然后在创建一个执行文件 deploy.sh 内容如下
CONFIG_FILE= "./config.cfg"
if [ ! -e $CONFIG_FILE ]
then
echo -e "$CONFIG_FILE not found."
exit 44
else
. $CONFIG_FILE
echo "loaded $CONFIG_FILE"
fi
pm2 start /from/to/server.js
这样就可以在使用 pm2 前先通过之前设置的环境变量首先找到 node-v8.0.0-linux-x64/bin 中的 node 命令,用它作为 pm2 执行的 node 命令。

 

转载于:https://www.cnblogs.com/lswit/p/8662533.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值