pm2发布node配置文件ecosystem.json详解


Posted in Javascript onMay 15, 2019

背景

最近在搭建一个node+koa+vue的项目使用到了pm2发布

这里简单的记录一下

在根目录新建文件

ecosystem.json

{
 "apps": [
  {
   "name": "ant-help-center",
   "script": "./bin/www", //启动脚本
   "env": {
    "COMMON_VARIABLE": "true"
   },
   // 测试服务器
   "env_development": {
    "NODE_ENV": "development",
    "PORT": 8087
   },
   // 生产环境
   "env_production": {
    "NODE_ENV": "production",
    "PORT": 8087
   }
  }
 ],
 "deploy": {
  // 生产环境
  "production": {
   "user": "root", //Nginx服务器上的username
   "host": ["xxx.xxx.xxx.xxx"], // 服务器地址
   "port": "22",
   "ref": "origin/master", //从指定的分支拉取代码
   "repo": "git@gitee.com:xxx/xxxx.git", // 使用
   "path": "/www/website/production", //发布到服务器指定的目录下
   "ssh_options": "StrictHostKeyChecking=no",
   //构建在发布
   "post-deploy":
    "npm install && pm2 startOrRestart ecosystem.json --env production",
   "env": {
    "NODE_ENV": "production"
   }
  },
  // 测试环境
  "development": {
   "user": "root", //Nginx服务器上的username
   "host": ["xxx.xxx.xxx.xxx"], // 服务器地址
   "port": "22",
   "ref": "origin/master", //从指定的分支拉取代码
   "repo": "git@gitee.com:xxx/xxxx.git",
   "path": "/www/website/development", //发布到服务器指定的目录下
   "ssh_options": "StrictHostKeyChecking=no",
   //构建在发布
   "post-deploy":
    "npm install && pm2 startOrRestart ecosystem.json --env development",
   "env": {
    "NODE_ENV": "development"
   }
  }
 }
}

需要注意点:

一:repo参数要使用git ssh的地址

pm2发布node配置文件ecosystem.json详解

二:先在服务器创建path 目录目录要有权限

创建对应目录:/www/website/development

获取development目录写入权限

发布

在本地文件夹本目录右键打开git bash

执行第一条,成功后

pm2 deploy ecosystem.json production setup

执行

pm2 deploy ecosystem.json production

需要注意点:

一:必须添加ssh公钥,自行百度

二:发布需要输入服务器的密码

最后

使用ip地址加项目端口号访问,如果还没有成功

你可以进入项目的current文件夹中执行启动命令

比如

node ./bin/www // 看下是否报错,排查错误

另外需要注意的点

一:node项目端口要在云服务商里进行设置,安全组白名单,要不访问不到
二:查看端口是否被占用

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js利用div背景,做一个竖线的效果。
Nov 22 Javascript
js复制网页内容并兼容各主流浏览器的代码
Dec 17 Javascript
jquery仿百度百科底部浮动导航特效
Aug 08 Javascript
JavaScript设计模式初探
Jan 07 Javascript
基于jquery实现百度新闻导航菜单滑动动画
Mar 15 Javascript
js实现楼层效果的简单实例
Jul 15 Javascript
Javascript函数中的arguments.callee用法实例分析
Sep 16 Javascript
jQuery实现6位数字密码输入框
Dec 29 Javascript
详解Angular 4.x NgIf 的用法
May 22 Javascript
vue loadmore组件上拉加载更多功能示例代码
Jul 19 Javascript
javascript+jQuery实现360开机时间显示效果
Nov 03 jQuery
原生js实现随机点餐效果
Dec 10 Javascript
JQuery常见节点操作实例分析
May 15 #jQuery
JS算法题之查找数字在数组中的索引位置
May 15 #Javascript
JQuery属性操作与循环用法示例
May 15 #jQuery
前端js中的事件循环eventloop机制详解
May 15 #Javascript
mpvue小程序循环动画开启暂停的实现方法
May 15 #Javascript
微信小程序的tab选项卡的实现效果
May 15 #Javascript
少女风vue组件库的制作全过程
May 15 #Javascript
You might like
虫族 ZERG 概述
2020/03/14 星际争霸
PHP json格式和js json格式 js跨域调用实现代码
2012/09/08 PHP
深入php中var_dump方法的使用详解
2013/06/24 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
2020/04/04 PHP
js资料prototype 属性
2007/03/13 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
在jquery boxy中添加百度地图坐标拾取注意流程
2014/04/03 Javascript
jQuery动态修改超链接地址的方法
2015/02/13 Javascript
nodejs创建web服务器之hello world程序
2015/08/20 NodeJs
基于Bootstrap实现下拉菜单项和表单导航条(两个菜单项,一个下拉菜单和登录表单导航条)
2016/07/22 Javascript
Angular.js中数组操作的方法教程
2017/07/31 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
微信小程序提取公用函数到util.js及使用方法示例
2019/01/10 Javascript
少女风vue组件库的制作全过程
2019/05/15 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
django框架模板语言使用方法详解
2019/07/18 Python
python Django编写接口并用Jmeter测试的方法
2019/07/31 Python
FFrpc python客户端lib使用解析
2019/08/24 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
Python Opencv图像处理基本操作代码详解
2020/08/31 Python
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
印度最好的在线药品订购网站:PharmEasy
2018/11/30 全球购物
德国自然时尚和有机产品购物网站:Waschbär
2019/05/29 全球购物
OSPF有什么优点?为什么OSPF比RIP收敛快?
2013/02/13 面试题
J2EE面试题大全
2016/08/06 面试题
机械工程系毕业生求职信
2013/09/27 职场文书
环保标语口号
2014/06/13 职场文书
护士工作失误检讨书
2014/09/14 职场文书
政府个人对照检查材料思想汇报
2014/10/08 职场文书
乡镇干部个人整改措施思想汇报
2014/10/10 职场文书
学校中秋节活动总结
2015/03/23 职场文书
2016年父亲节寄语
2015/12/04 职场文书
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
2021/03/29 Python
vue实现无缝轮播效果(跑马灯)
2021/05/14 Vue.js