背景
最近在搭建一個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": "[email protected]: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": "[email protected]: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 目錄目錄要有權限
創建對應目錄:/www/website/development
獲取development目錄寫入權限
發布
在本地文件夾本目錄右鍵打開git bash
執行第一條,成功后
pm2 deploy ecosystem.json production setup
執行
pm2 deploy ecosystem.json production
需要注意點:
一:必須添加ssh公鑰,自行百度
二:發布需要輸入服務器的密碼
最后
使用ip地址加項目端口號訪問,如果還沒有成功
你可以進入項目的current文件夾中執行啟動命令
比如
node ./bin/www // 看下是否報錯,排查錯誤
另外需要注意的點
一:node項目端口要在云服務商里進行設置,安全組白名單,要不訪問不到
二:查看端口是否被占用
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答