pm2 远程发版

创建配置项

在你的git仓库根目录中新建pm2配置文件ecosystem.config.js,如注释所示,或者执行pm2 init初始化文件ecosystem.config.js

module.exports = {
  apps : [{
    //pm2名字
    name: "nextcn",
   //pm2运行脚本
    script: "./app.js",
  //环境变量
    env: {
      NODE_ENV: "development",
    },
    env_production: {
      NODE_ENV: "production",
    }
  }],
  deploy: {
    // "production" is the environment name
    production: {
      // 服务器端SSH key 地址, 默认 $HOME/.ssh
      key: "$HOME/.ssh",
      // SSH user 需配置
      user: "root",
      // SSH host 需配置
      host: ["47.98.138.195"],
      // SSH options with no command-line flag, see 'man ssh'
      // can be either a single string or an array of strings
      ssh_options: "StrictHostKeyChecking=no",
      // GIT remote/branch
      ref: "origin/master",
      // GIT ssh远程地址 需配置
      repo: "git@github.com:raoenhui/next-site-cn.git",
      // 放入服务器端地址 需配置
      path: "/ice/pm2",
      // Pre-setup command or path to a script on your local machine
      "pre-setup": "echo 'This is a pre-setup command'",
      // Post-setup commands or path to a script on the host machine
      // eg: placing configurations in the shared dir etc
      "post-setup": "ls -la",
      // pre-deploy action
      "pre-deploy-local": "echo 'This is a pre-deploy-local command'",
      // post-deploy action
      "post-deploy": "npm install && pm2 reload ecosystem.config.js --env production'"
    },
  }
}

安装

pm2 deploy production setup
服务器上的git版本需要在v1.8以上,否则fetch不成功,代码更新不了。可参照 CENTOS安装高版本GIT
image.png

更新

pm2 deploy production update

回滚

pm2 deploy production revert 1
可查看提交记录,回滚到想要的版本 pm2 deploy production list

强制提交

pm2 deploy production --force
当你代码有修改但是不想提交时可以强制发布
参考资料

Happy coding .. :)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值