首先,为保障安装成功率和速度,指定下 github.com 的IP。
在 /etc/hosts 文件中加入:
185.199.109.133 rew.githubusercontent.com
20.205.243.166 github.com
nvm-Nodejs版本管理器
安装
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# 或
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
安装成功后。刷新bash环境。
#bash:
source ~/.bashrc
#zsh:
source ~/.zshrc
#ksh:
. ~/.profile
验证安装:
nvm -v
使用
使用nvm 查看全部版本。然后,选择需要的版本安装。
查看远程node版本
nvm ls-remote
列出所有安装的版本
nvm ls
安装最新稳定版 node
nvm install stable
安装指定版本
nvm install <version>
删除已安装的指定版本
nvm uninstall <version>
切换使用指定的版本node
nvm use <version>
改变默认的版本:
nvm alias default <v1.15.0> # (指定版本号)
nrm-Nodejs包镜像管理
安装
选择不同的npm镜像为安装包加速。
# 使用淘宝镜像安装nrm
npm i nrm -g --registry=https://registry.npmmirror.com/
使用
查看已有仓库镜像
nrm ls
设置本地使用镜像
nrm use <仓库名>
添加自己的仓库镜像
nrm add <镜像名> <仓库地址>
删除镜像
nrm remvoe <镜像名>
PM2-Nodejs服务管理器
PM2(Process Manager 2 )是具有内置负载均衡器的Node.js应用程序的生产运行时和进程管理器。 它允许您永久保持应用程序活跃,无需停机即可重新加载它们,并促进常见的Devops任务。
PM2特性
日志管理:应用程序日志保存在服务器的硬盘中~/.pm2/logs/
- 负载均衡:PM2可以通过创建共享同一服务器端口的多个子进程来扩展您的应用程序。这样做还允许您以零秒停机时间重新启动应用程序。
- 终端监控:可以在终端中监控您的应用程序并检查应用程序运行状况(CPU使用率,使用的内存,请求/分钟等)。
- SSH部署:自动部署,避免逐个在所有服务器中进行ssh。
- 静态服务:支持静态服务器功能
- 多平台支持:适用于Linux(稳定)和macOS(稳定)和Windows(稳定)
安装
pm2用于管理Nodejs服务的运行 ```bash npm i pm2 -g或
yarn global add pm2
<a name="b9yeP"></a>
### 使用
- **启动服务**
语法:pm2 start <应用入口> [--name 自定义pm2中显示的应用名]
```bash
pm2 start ./app.js --name 演示应用
监听模式
pm2 start app.js --watch //当文件发生变化,自动重启
静态服务器
pm2 serve ./dist 9090 //将目录dist作为静态服务器根目录,端口为9090
启用群集模式(自动负载均衡) ```bash
max 表示PM2将自动检测可用CPU的数量并运行尽可能多的进程
max可以自定义,如果是4核CPU,设置为2者占用2个
pm2 start app.js -i max
- **重启服务**
语法:pm2 restart [pm2中的应用id]或 [应用名] 或 all。
```bash
# 重启
# 同时杀死并重启所有进程。短时间内服务不可用。生成环境推荐使用reload
pm2 restart <all | ID | name>
平滑重启
# 重新启动所有进程,始终保持至少一个进程在运行
pm2 reload app.js
# 优雅地以群集模式重新加载所有应用程序
pm2 gracefulReload all
停止服务
# 停止
pm2 stop <all | ID | name>
查看运行中的应用
pm2 list
删除应用
pm2 delete <all | ID | name>
查看每个应用程序占用情况
pm2 monit
显示应用程序所有信息
pm2 show [Name] //根据name查看
pm2 show [ID] //根据id查看
日志查看
pm2 logs //查看所有应用日志
pm2 logs [Name] //根据指定应用名查看应用日志
pm2 logs [ID] //根据指定应用ID查看应用日志
保存当前应用列表
pm2 save
重启保存的应用列表
pm2 resurrect
清除保存的应用列表
pm2 cleardump
保存并恢复PM2进程
pm2 update