PM2的简单使用

PM2是node进程管理工具,一般用来在服务器端启动以及监测Node.js服务,我的个人博客项目就是用pm2启动的。

安装

安装很简单

npm install pm2 -g

安装之后就可以在项目目录下执行命令启动服务

pm2 start app.js

相当于开发环境中node app.js

一些常用基本命令

停止所有服务

pm2 stop all

查看所有服务

pm2 list

查看服务进程状态

pm2 status

还有几个会在下面代码中使用

配置文件

  • pm2配置文件可以选择yml和json两种文件,看个人喜好。
  • json格式的配置文件,pm2当作普通的js文件来处理,所以可以在里面添加注释或者编写代码。
  • 如果启动的时候指定了配置文件,那么命令行参数会被忽略。(个别参数除外,比如--env)

上一份最基础的配置文件,混混眼熟

pm2.yml

apps:
  - script: ./app.js  #程序启动文件
    name: myblog    #启动服务名(自定义)
    env_production:   #生产环境
      NODE_ENV: production

pm2.json(这里写了两个服务)

{
    "apps": [
        {
            // Application #1
            "name": "myblog",
            "script": "./app.js",
            "env_production": {
                "NODE_ENV": "production"
            }
        },
        {
            // Application #2
            "name": "api-app",
            "script": "api.js",
            "instances": 4,
            "exec_mode": "cluster_mode",
            "error_file": "./examples/child-err.log",
            "out_file": "./examples/child-out.log",
            "pid_file": "./examples/child.pid"
        }
    ]
}

启动服务命令

pm2 start pm2.yml --env production

如果是json文件将pm2.yml替换即可,--env production意思是根据配置文件中的env_production设置环境变量。

因为在配置文件中写了服务name,那命令也可以直接用name

停止myblog服务

pm2 stop myblog

重启myblog服务

pm2 restart myblog

一般上线项目都会监测日志,但pm2也可以查看日志

查看myblog程序中的打印日志

pm2 log myblog

查看myblog服务进程信息

pm2 describe myblog

更详细的配置文件可以看看下面的几个引用地址

官方文档    参考文章    参考文章

发布了63 篇原创文章 · 获赞 18 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/samfung09/article/details/83692832
pm2