启动
启动 静态文件 |
pm2 serve . 9001 --nametest--watch| | —- |- https://blog.csdn.net/uikoo9/article/details/79018750
npm 启动
pm2 start npm -- start
启动java
- https://blog.csdn.net/uikoo9/article/details/79018750
建立pm2.json 内容如下
{"name": "my-server","script": "/usr/bin/java","args": ["-jar","server.jar"],"exec_interpreter": "","exec_mode": "fork"}
说明如下:
name 进程名称(显示在
pm2 list命令中)- script 执行进程名称,如果需要执行PHP脚本则填写php解释器的路径,本文为java
- args 传给执行进程的参数,多个参数以数组单元分割
- exec_interpreter NodeJs解析器,本文不适用
exec_mode 执行模式[cluster|fork]这个针对NodeJs应用的配置,非NodeJs应用统一fork
配置文件完成后,使用
pm2 start pm2.json
日志文件
日志路径在
~/.pm2/logs,stdout和stderr被分开存放,程序中的所有stdout和stderr都被收集方便查错。开机直接启动pm2 保存好的任务
使用pm2 start (启动服务)
- 执行pm2 save (保存当前已经启动了的服务)
- 执行pm2 startup (设置开机自启的配置)
- 执行pm2 startup以后会得到以下提示 设置环境变量 ```java [PM2] Init System found: systemd Platform systemd Template [Unit] Description=PM2 process manager Documentation=https://pm2.keymetrics.io/ After=network.target
[Service] Type=forking User=root LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity Environment=PATH=/home/hadoop/hadoop/bin:/home/hadoop/hadoop/sbin:/root/nvm/versions/node/v10.16.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/home/hbase/hbase-2.2.6/bin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin Environment=PM2_HOME=/root/.pm2 PIDFile=/root/.pm2/pm2.pid Restart=on-failure
ExecStart=/root/nvm/versions/node/v10.16.3/lib/node_modules/pm2/bin/pm2 resurrect ExecReload=/root/nvm/versions/node/v10.16.3/lib/node_modules/pm2/bin/pm2 reload all ExecStop=/root/nvm/versions/node/v10.16.3/lib/node_modules/pm2/bin/pm2 kill
[Install] WantedBy=multi-user.target
Target path /etc/systemd/system/pm2-root.service Command list [ ‘systemctl enable pm2-root’ ] [PM2] Writing init configuration in /etc/systemd/system/pm2-root.service [PM2] Making script booting at startup… [PM2] [-] Executing: systemctl enable pm2-root… [PM2] [v] Command successfully executed. +———————————————————-+ [PM2] Freeze a process list on reboot via: $ pm2 save
[PM2] Remove init script via: $ pm2 unstartup systemd
- 执行 systemctl enable pm2-root<a name="articleContentId"></a># pm2启动npm run dev和开机自启<a name="bcy8d"></a>### 安装```javascriptnpm install -g pm2
管理命令
$ pm2 start app.js$ pm2 start bashscript.sh$ pm2 start python-app.py --watch# 启动npm run dev$ pm2 start npm --watch -- run devpm2 [list|ls|status] # 显示状态pm2 logs # 查看所有进程日志pm2 stop all # 停止所有进程pm2 restart all # 重启所有进程pm2 stop 0 # 停止进程pm2 restart 0 # 重启进程pm2 delete 0 # 删除进程# 添加额外参数到脚本-- arg1 arg2 arg3# eg: pm2启动 npm run startpm2 start npm --name www -- run start
日志查看
/root/.pm2/logs/
开机自启
sudo pm2 start xxxx #启动服务sudo pm2 save # 保存服务sudo pm2 startup # 把已启动服务加到systemd中sudo pm2 unstartup systemd # 删除自动启动服务
