一、方法1:nohup
.bash_profile中并source加载
如果没有就安装吧
yum provides */nohup
nohup npm start &
原程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用。
停止程序:
ps -ef | grep npm
ps -ef | grep node
kill -9 1067
二、方法2:pm2
1、安装
cnpm install pm2 -g
#查看安装是否成功
pm2 list
2、启动项目
#pm2启动:
which npm
# /root/.nvm/versions/node/v16.13.1/bin/npm 安装路径(which npm 查看)
pm2 start "/root/.nvm/versions/node/v16.13.1/bin/npm" --name "esteelauder" -- start .
pm2 list
pm2 stop
pm2 restart
pm2 delete
结果:
[root@VM-8-11-centos esteelauder]# pm2 start "/root/.nvm/versions/node/v16.13.1/bin/npm" --name "esteelauder" -- start
[PM2] Starting /root/.nvm/versions/node/v16.13.1/bin/npm in fork_mode (1 instance)
[PM2] Done.
┌─────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├─────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ esteelauder │ default │ N/A │ fork │ 868128 │ 0s │ 0 │ online │ 0% │ 38.6mb │ root │ disabled │
└─────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
- pm2 常用命令
pm2 start app.js # 启动app.js应用程序
pm2 start app.js –name=”api” # 启动应用程序并命名为 “api”
pm2 start app.js –watch # 当文件变化时自动重启应用
pm2 start script.sh # 启动 bash 脚本
pm2 list # 列表 PM2 启动的所有的应用程序
pm2 monit # 显示每个应用程序的CPU和内存占用情况
pm2 show [app-name] # 显示应用程序的所有信息
pm2 logs # 显示所有应用程序的日志
pm2 logs [app-name] # 显示指定应用程序的日志
pm2 stop all # 停止所有的应用程序
pm2 stop 0 # 停止 id为 0的指定应用程序
pm2 restart all # 重启所有应用
pm2 reload all # 重启 cluster mode下的所有应用
pm2 gracefulReload all # Graceful reload all apps in cluster mode
pm2 delete all # 关闭并删除所有应用
pm2 delete 0 # 删除指定应用 id 0
pm2 scale api 10 # 把名字叫api的应用扩展到10个实例
pm2 reset [app-name] # 重置重启数量
pm2 startup # 创建开机自启动命令
pm2 save # 保存当前应用列表
pm2 resurrect # 重新加载保存的应用列表
pm2 update # Save processes, kill PM2 and restore processes
pm2 generate # Generate a sample json configuration file