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 相关文章推荐
EasySlider 基于jQuery功能强大简单易用的滑动门插件
Jun 11 Javascript
js数组Array sort方法使用深入分析
Feb 21 Javascript
jQuery实现Select下拉列表进行状态选择功能
Mar 30 jQuery
js下载文件并修改文件名
May 08 Javascript
vue.js删除动态绑定的radio的指定项
Jun 02 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
May 15 Javascript
vuejs 切换导航条高亮(路由菜单高亮)的方法示例
May 29 Javascript
vue两个组件间值的传递或修改方式
Jul 04 Javascript
Vue中div contenteditable 的光标定位方法
Aug 25 Javascript
vue过滤器用法实例分析
Mar 15 Javascript
vue语法自动转typescript(解放双手)
Sep 18 Javascript
JQuery实现折叠式菜单的详细代码
Jun 03 jQuery
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
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
php基于socket实现SMTP发送邮件的方法
2015/03/05 PHP
PHP.ini安全配置检测工具pcc简单介绍
2015/07/02 PHP
PHP导出带样式的Excel示例代码
2016/08/28 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
Javascript 日期对象Date扩展方法
2009/05/30 Javascript
javascript getElementsByClassName 和js取地址栏参数
2010/01/02 Javascript
json格式化/压缩工具 Chrome插件扩展版
2010/05/25 Javascript
CodeMirror2 IE7/IE8 下面未知运行时错误的解决方法
2012/03/29 Javascript
基于jquery的点击链接插入链接内容的代码
2012/07/31 Javascript
Ajax同步与异步传输的示例代码
2013/11/21 Javascript
JavaScript Window浏览器对象模型方法与属性汇总
2015/04/20 Javascript
纯javascript实现图片延时加载方法
2015/08/21 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
js实现鼠标单击Tab表单切换效果
2018/05/16 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
2020/07/20 Javascript
[03:15]2014DOTA2国际邀请赛 专访国士无双信心满满
2014/07/12 DOTA
python 从远程服务器下载日志文件的程序
2013/02/10 Python
python 实现一个贴吧图片爬虫的示例
2017/10/12 Python
只需7行Python代码玩转微信自动聊天
2019/01/27 Python
Python3实现的简单三级菜单功能示例
2019/03/12 Python
python实现祝福弹窗效果
2019/04/07 Python
python中hasattr()、getattr()、setattr()函数的使用
2019/08/16 Python
python logging 重复写日志问题解决办法详解
2020/08/04 Python
Django+Django-Celery+Celery的整合实战
2021/01/20 Python
Java如何调用外部Exe程序
2015/07/04 面试题
既然说Ruby中一切都是对象,那么Ruby中类也是对象吗
2013/01/26 面试题
高分子材料个人求职信范文
2013/09/25 职场文书
医学生实习自我鉴定
2013/09/27 职场文书
大学生收银员求职信分享
2014/01/02 职场文书
北京奥运会口号
2014/06/21 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
运动会1000米加油稿
2015/07/21 职场文书
英文诗歌翻译方法(赏析)
2019/08/16 职场文书
判断Python中的Nonetype类型
2021/05/25 Python
Python软件包安装的三种常见方法
2022/07/07 Python