鍍金池/ 問答/Linux  HTML/ ubuntu 利用pm2自動化部署nodejs服務報錯:pm2 commond

ubuntu 利用pm2自動化部署nodejs服務報錯:pm2 commond not found?

ubuntu 利用pm2自動化部署nodejs服務報錯:pm2 commond not found?

echsystem.json 文件:

{
  "apps": [
    {
      "name": "commic",
      "script": "app.js",
      "env": {
        "COMMON_VARIABLE": "true"
      },
      "env_production": {
        "NODE_ENV": "production"
      }
    }
  ],
  "deploy": {
    "production": {
      "user": "xsy",
      "host": ["120.78.165.227"],
      "port": "19999",
      "ref": "origin/master",
      "repo": "git@gitee.com:xiasiyong/cmmic.git",
      "path": "/home/xsy/www/comic/production",
      "ssh_options": "StrictHostKeyChecking=no",
      "post-deploy": "pm2 startOrRestart ecosystem.json --env production",
      "env": {
        "NODE_ENV": "production"
      }
    }
  }
}

自己電腦上執(zhí)行: pm2 deploy ecosystem.json production setup,成功

--> Deploying to production environment
--> on host 120.78.165.227
  ○ hook pre-setup
  ○ running setup
  ○ cloning git@gitee.com:xiasiyong/cmmic.git
  ○ full fetch
Cloning into '/home/xsy/www/comic/production/source'...
  ○ hook post-setup
  ○ setup complete
--> Success

發(fā)布的時候:pm2 deploy ecosystem.json production,報錯

xiasiyongdeMacBook-Pro:cmmic xiasiyong$ pm2 deploy ecosystem.json production
--> Deploying to production environment
--> on host 120.78.165.227
  ○ deploying origin/master
  ○ executing pre-deploy-local
  ○ hook pre-deploy
  ○ fetching updates
  ○ full fetch
Fetching origin
  ○ resetting HEAD to origin/master
HEAD is now at de8333a 11
  ○ executing post-deploy `export NODE_ENV=production && pm2 startOrRestart ecosystem.json --env production`
bash: pm2: command not found

  post-deploy hook failed

Deploy failed

我的服務器是阿里云,ubuntu 14.04,在服務器端運行PM2 -v 是沒問題的呀?

xsy@iZwz9isotv99f3eth4ow92Z:~$ pm2 -v
2.7.2

在服務器對應的文件夾目錄下面執(zhí)行命令又是OK的,

clipboard.png

小弟慚愧,折騰半天沒有結(jié)果,想請教各位大神,我是哪里出問題了?

回答
編輯回答
蝶戀花

同問,遇到同樣的問題,樓主解決了嗎

2018年8月19日 05:22
編輯回答
夏木

查找路徑不對.

sudo npm i -g pm2
2017年7月13日 21:46