node 项目部署(pm2)

  最近在用 node 写个 Web Server,记录一下部署方法。

一、部署项目

1、部署前准备

  服务器端需要提前安装好 git、nginx、node、cnpm(安装 git、安装 nginx)、pm2(使用 pm2 部署 node 项目
  1、ssh 到服务器,并在指定目录位置通过 git clone 拉取代码初始化文件夹
  2、配置 node 服务的 nginx,服务启动在 9000 端口,http、https 均可访问(需要配置证书),配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 记账啦后端 node api 的 nginx 配置
# http
server {
listen 80;
server_name api.jzl.liuxianyu.cn;

location / {
proxy_pass http://localhost:9000/;
}
}

# https
server {
listen 443 ssl;
server_name api.jzl.liuxianyu.cn;
client_max_body_size 50M;
client_body_timeout 10m;
ssl_certificate cert/api.jzl.liuxianyu.cn.pem;
ssl_certificate_key cert/api.jzl.liuxianyu.cn.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

location / {
proxy_pass http://localhost:9000/;
}
}

2、部署流程

  1、本地修改代码,上传到 git
  2、服务器通过 git 拉取最新代码
  3、重启 pm2 对应进程

二、操作

  终端连接到服务器,进入对应目录,命令行执行:

1
./start.sh

  start.sh文件内容如下:

1
2
3
4
git pull origin master
cnpm i
pm2 restart ./pm2/config.json
pm2 monit

  可按需要添加以下两条命令:

含义 命令
显示每个应用程序的 CPU 和内存占用情况 pm2 monit
查看输出的日志 pm2 logs

pm2 monit
pm2 logs

以上

随笔标题:node 项目部署(pm2)

随笔作者:刘先玉

发布时间:2020年12月10日 - 15:28:15

最后更新:2020年12月10日 - 15:28:15

原文链接:https://liuxianyu.cn/article/deploy-node.html