準備一台linux伺服器(本文件以阿里centos為例)
安裝nodejs、git、pm2等環境
專案**
本地已經安裝用於連線 linux 例項的工具,如 xshell
前兩步傳送門,在基本環境搭建好以後我們還要做一些其他的簡單而重要的事情
配置key 使本地和伺服器具備讀寫遠端倉庫的能力
這裡我們存放的是專案**的倉庫以github為例,但是倉庫需要加密,防止其他人篡改你的**,但是加密的金鑰從哪來呢,傳送門,這裡有各個系統生成金鑰的方法,按照步驟執行即可。
然後登入你的github後訪問
把上面生產的key填寫在其中就可以了,title可以隨意填寫,我一般填寫為key的宿主便於後期維護。
注意:我們要分別在本地和伺服器上生成key新增到倉庫中。如果你已經具備專案倉庫,這只需執行伺服器上的步驟。將本地的專案同步到倉庫
在伺服器clone專案看伺服器是否具有拉取專案的許可權。
專案中加入pm2的配置檔案deploy.yml
- script : server.js // 發布時需要執行的指令碼
name : 'vue-admin' // 專案名
watch : true //是否監控
env : //環境變數
node_env: development
env_production:
node_env: production
deploy :
production : //生產環境發布
user : root //主機使用者名稱(centos的登入使用者名稱)
key : c:/key/ssh-ubuntu.pem //主機金鑰檔案
host :
- 120.78.174.212 //主機ip
port : 22 // 埠
ref : origin/master //倉庫分支
repo : [email protected]:artiely/vue-admin.git //倉庫位址
path : /www/ant-design-pro/production //伺服器專案的部署位址(確保資料夾存在)
ssh_options : stricthostkeychecking=no // 是否檢查金鑰
pre-deploy : git fetch --all //發布前的鉤子,拉取專案
post-deploy : 'npm install --ignore-scripts && pm2 startorrestart deploy.yml --env production'// 發布時的鉤子,先安裝依賴再啟動pm2以生產環境
env :
node_env : production
第一次發布production需先setup
pm2 deploy deploy.yml production setup
發布
pm2 deploy deploy.yml production
每次專案更新後只要同步到倉庫後都可以再次執行pm2 deploy deploy.yml production
以實時預覽更新的內容。
當然還可以通過npm script或github webhook使事情變得更簡單,再聊咯。
完.
使用pm2管理node程序
pm2是node程序的乙個管理工具 在linux使用是比較穩定的,在windows上好像有問題,最好使用forever代替 npm install pm2 g name引數為應用名稱,i為例項數量 會負載均衡 log date format為日誌時間格式 是moment的日期格式化 pm2 list...
使用PM2管理node專案
在這裡我使用的是pm2,不需要什麼配置,直接通過命令列就能簡單的把專案部署起來,pm2具體的介紹我就不說了,在這裡只介紹幾個常用的命令。首先確保安裝了node,然後全域性安裝pm2npm install pm2 g pm2 start.js i4 name pm2 list該命令能檢視pm2所有部署...
如何用PM2部署高版本node
現在pm2跑著的專案的node版本較低,而最新的專案使用到了 koa框架,koa對於node的版本要求較高,我們將node公升級到了較高版本,這樣用pm2起的時候就會出錯,按照 一步步來,先pm2 ecosystem 多出乙個 檔案 ecosystem.config.js.對其進行配置 module...