最近在搭建一個node+koa+vue的項目使用到了pm2發佈
這裏簡單的記錄一下
在根目錄新建文件
ecosystem.jsonvue
{ "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的地址
二:先在服務器建立path 目錄目錄要有權限node
建立對應目錄:/www/website/development 獲取development目錄寫入權限
在本地文件夾本目錄右鍵打開git bash
執行第一條,成功後git
pm2 deploy ecosystem.json production setup
執行web
pm2 deploy ecosystem.json production
須要注意點:
一:必須添加ssh公鑰,自行百度
二:發佈須要輸入服務器的密碼npm
使用ip地址加項目端口號訪問,若是尚未成功
你能夠進入項目的current文件夾中執行啓動命令
好比json
node ./bin/www // 看下是否報錯,排查錯誤
另外須要注意的點
一:node項目端口要在雲服務商裏進行設置,安全組白名單,要不訪問不到
二:查看端口是否被佔用安全
您能夠掃描添加下方的微信並備註 Soul 加交流羣,給我提意見,交流學習。bash
若是對你有幫助送我一顆小星星(づ ̄3 ̄)づ╭❤~服務器
轉載請聯繫做者!微信