node项目服务器部署

最近开发了一个node项目,开发完了准备上线,于是就去找运维给部署一下,部署了N久,然后问我怎么弄?!!妈呀,小女子我是个弱鸡呀,不懂运维部署啥的,只知道切页面而已。。。

幸好在好同事的牵引下,我知道了pm2这个东东,记录一下,怕以后忘了。

什么是pm2?

别人说:

PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单

我说:

就是服务死了可以自动重启服务,不需要半夜被电话惊醒然后手动去重启服务,可以安心的睡美容觉。

下面说说用法

先安装

npm install -g pm2

然后window系统装一下Xshell 5,新建一个会话,输入机器ip、账号以及密码


node项目服务器部署_第1张图片

然后就可以在这个在这个会话里敲命令了pm2 start app.js 启动项目

然后可以根据你的心情,执行下面的命令得到

# 1. 启动

$ pm2 start app.js -i 4 #后台运行pm2,启动4个app.js

                                # 也可以把'max' 参数传递给 start

                                # 正确的进程数目依赖于Cpu的核心数目

$ pm2 start app.js --name my-api  # 以my-api  为 PM2 进程名称

$ pm2 start app.js --watch # 实时监控 app.js 的方式启动,当 app.js 文件有变动时,PM2 会自动reload


# 2. 查看进程

$ pm2 list              # 显示所有进程状态

# 3. 监控

$ pm2 monit              # 监视所有进程

# 4. 停止

$ pm2 stop all          # 停止所有进程

$ pm2 stop 0            # 停止指定的进程

# 5. 重载

$ pm2 reload all        # 0秒停机重载进程 (用于 NETWORKED 进程)

# 6. 重启

$ pm2 restart all        # 重启所有进程

$ pm2 restart 0          # 重启指定的进程

# 7. 删除 PM2 进程

$ pm2 delete 0          # 杀死指定的进程

$ pm2 delete all        # 杀死全部进程

# 8. 日志操作

$pm2 logs    # 显示所有进程日志

$pm2 flush     # 清除所有日志

$pm2 reloadLogs    # 重载所有日志

# 9. 升级 PM2

$npm install pm2@lastest -g     # 安装最新的 PM2 版本

$pm2 updatePM2    # 升级 PM2

# 10. 更多命令参数请查看帮助

$pm2 --help

$ pm2 startup            # 产生 init 脚本 保持进程活着

$ pm2 web                # 运行健壮的 computer API endpoint

more

域名配置

通过 IP 地址访问是没有问题的,但 IP 地址无意义从而增加了记忆负担,此时可以通过配置域名来访问 Node.js 应用。

那么,你可以叫运维帮忙在nginx.conf里添加如下配置

server {

        listen 80;

        server_name xx.xxx.cn;

        location /loginpagemaker/ {

                proxy_pass http://127.0.0.1:8865;

            }

}

你可能感兴趣的:(node项目服务器部署)