首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NodeJS -如何使6.9.1版永久化?

NodeJS -如何使6.9.1版永久化?
EN

Stack Overflow用户
提问于 2018-01-09 14:23:33
回答 2查看 590关注 0票数 2

我的CentOS 7.4上有节点v6.12.2。但是我必须保留v6.9.1,所以当我按照它工作时,但是在重新启动或注销之后,它就不保存了。

代码语言:javascript
复制
sudo yum install epel-release
sudo yum install nodejs
sudo yum install npm
npm install forever -g
curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash
source ~/.bash_profile
nvm list-remote
nvm install v6.9.1
# nvm use 6.9.1
Now using node v6.9.1
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-09 14:44:12

nvm alias default 6.9.1

根据NVM文档

若要设置在任何新shell中使用的默认节点版本,请使用别名default: nvm别名默认节点

注意,这会将最新版本设置为默认值.

所以在你的情况下,你会:

代码语言:javascript
复制
# Install the version that you would like 
nvm install 6.9.1

# Set 6.1.0 (or another version) as default
nvm alias default 6.9.1

在不同版本下运行不同的应用程序

或者,如果您需要为服务器上的不同应用程序使用不同的版本,您可以在crontab文件中使用如下内容:

代码语言:javascript
复制
@reboot forever start -c /home/your-name/.nvm/versions/node/v6.9.1/bin/node /path/to/app1/server.js

@reboot forever start -c /home/your-name/.nvm/versions/node/v0.11.0/bin/node /path/to/retro/app/server.js    

@reboot forever start -c /home/your-nodenode /path/to/modern/app/server.js

就我个人而言,这是我最喜欢的方法,就好像您有20或30个节点应用程序一样,更容易指定自己的版本,而不只是依赖服务器当前的版本。

票数 1
EN

Stack Overflow用户

发布于 2018-01-09 15:17:14

工作!CentOS 7.4

第一步

从新到旧。

代码语言:javascript
复制
curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bash
source ~/.bash_profile
nvm list-remote
nvm install v6.7.0
nvm use 6.7.0
Now using node v6.7.0
nvm alias default 6.7.0
whereis node
node: /usr/bin/node /usr/share/node /root/.nvm/v6.7.0/bin/node /usr/share/man/man1/node.1.gz
/root/.nvm/v6.7.0/bin/node --version
v6.7.0

第二步

以服务的方式运行。

代码语言:javascript
复制
cat /etc/systemd/system/node-server1.service
[Unit]
Description=Node-Server1
#Requires=After=mysql.service       # Requires the mysql service to run first

[Service]
ExecStart=/root/.nvm/v6.7.0/bin/node /home/www/html/server.js
Restart=always
RestartSec=1                       # Restart service after 10 seconds if node service crashes
StandardOutput=syslog               # Output to syslog
StandardError=syslog                # Output to syslog
SyslogIdentifier=nodejs-server1
#User=<alternate user>
#Group=<alternate group>
Environment=NODE_ENV=production PORT=1337

[Install]
WantedBy=multi-user.target

第三步

代码语言:javascript
复制
systemctl enable node-server1.service
systemctl start node-server1.service
tail -f /var/log/messages
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48170267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档