背景:
easy-mock 是常用的mock數(shù)據(jù)網(wǎng)站岭洲, 但是隨著用戶越來越多盾剩,easy-mock的接口響應(yīng)速度有點時候會很慢(也跟本地網(wǎng)絡(luò)環(huán)境有關(guān)),而且接口也不穩(wěn)定告私,時不時就掛了驻粟。。番挺。
需求:
公司里有一臺專門搭建內(nèi)網(wǎng)服務(wù)器的機子玄柏,供開發(fā)者使用,所以想把easy-mock部署到本地粪摘,這樣接口的穩(wěn)定性和響應(yīng)速度得到了保證徘意,而且對團隊開發(fā)也很有幫助椎咧。
實施:
首先先看easy-mock本地部署的官方介紹,https://github.com/easy-mock/easy-mock/blob/dev/README.zh-CN.md.官網(wǎng)介紹的步驟勤讽,大致分為以下幾步:
- 安裝 node(>=v8.9) & MongoDB(>=v3.4) & Redis(>=v4.0)
- 安裝 easy-mock脚牍,更改配置文件
- 啟動 easy-mock诸狭,測試項目是否可以正常啟動君纫,能的話就可以先 Ctrl + C了
- 啟動 MongoDB 和 Redis
- npm run build,然后用 PM2 啟動 app.js
1.先裝node
這一步不多講了妹懒,之前有一篇nvm版本管理和nrm下載源管理講到了如何安裝管理node版本和npm下載源眨唬。我用的是8.15.0好乐,已經(jīng)放到公司服務(wù)器上,
2.安裝MongoDB
- 安裝包: 百度鏈接:https://pan.baidu.com/s/1M7HhtTRW8fE1Oknb0o4TgA 提取碼:kz8x
- win版MongoDB安裝教程
- MongoDB配置環(huán)境變量里面寫的不清楚岭妖,我在這里重寫下昵慌,
MONGO_HOME = C:\Program Files\MongoDB\Server\3.4\bin
Path = %MONGO_HOME%
- 推薦使用可視化工具管理數(shù)據(jù)庫斋攀,清晰明了梧田,我現(xiàn)找了一個,全是英文看不懂鹉梨,但也能湊活用了存皂,如果有更好的希望推薦下。
- 教程網(wǎng)址Robo 3T,mongoDB可視化工具
3.安裝redis
- 可以直接從https://redis.io/download下載安裝包,解壓到根目錄下面的 opt 文件夾下旦袋, 可以根據(jù)自己的需求改動 redis.conf 文件猜憎,然后輸入命令 redis-server搔课,就可以正常啟動 redis 了。上面的百度鏈接里面也有壓縮包柬讨。
4.安裝easy-mock
- 最后要安裝的就是 easy-mock踩官,git clone 下來,然后 npm install蔗牡,安裝依賴辩越,npm run dev啟動項目,config/default.json 可以自定義的配置趁啸,當(dāng)然不配置倒也沒關(guān)系不傅,easy-mock會自動使用 MongoDB 和 redis赏胚,不需要其他操作栅哀。easy-mock 會默認(rèn)啟動在 7300 下面,打開服務(wù)器的ip+port戳晌,查看 easy-mock 是否正常啟動沦偎,正常啟動了說明安裝階段大功告成咳蔚!
- 自定義配置:在--config下創(chuàng)建local.json文件,
{
"port": 7300, //easymock項目啟動的端口
"host": "0.0.0.0",
"pageSize": 30,
"proxy": false,
"db": "mongodb://localhost/easy-mock", // 不需要自己新建數(shù)據(jù)庫谈火,在啟動的easymock新建接口即可
"unsplashClientId": "",
"redis": {
"port": 6379, //redis端口
"host": "localhost"
},
"blackList": {
"projects": [], // projectId糯耍,例:"5a4495e16ef711102113e500"
"ips": [] // ip温技,例:"127.0.0.1"
},
"rateLimit": { // https://github.com/koajs/ratelimit
"max": 1000,
"duration": 1000
},
"jwt": {
"expire": "14 days",
"secret": "shared-secret"
},
"upload": {
"types": [".jpg", ".jpeg", ".png", ".gif", ".json", ".yml", ".yaml"],
"size": 5242880,
"dir": "../public/upload",
"expire": {
"types": [".json", ".yml", ".yaml"],
"day": -1
}
},
"fe": {
"copyright": "",
"storageNamespace": "easy-mock_",
"timeout": 25000,
"publicPath": "/dist/"
}
}
5.部署階段:
- 全局安裝pm2
npm install pm2 -g
- 編譯easy-mock文件
npm run build
- 啟動
pm2 start app.js -i 4
- 查看
pm2 list
- 訪問ip+port
http://192.168.1.6:7300
windows下配置pm2開機自動開啟服務(wù)
- 安裝并配置pm2-windows-service
npm i -g pm2-windows-service
- 添加.pm2的系統(tǒng)環(huán)境變量
PM2_HOME=C:\Users\zhtop.pm2(路徑默認(rèn)在當(dāng)前用戶下的.pm2)
- 以管理員權(quán)限打開新的cmd命令行窗口,執(zhí)行以下命令來安裝服務(wù)
pm2-service-install
-
提示Perform environment setup ? 選 n, 繼續(xù),此時, PM2服務(wù)已安裝成功并已啟動, 可以通過 [win + r] - [ services.msc] 來查看震檩,服務(wù)名稱為PM2
- 運行程序
pm2 start app.js -n MongoDBserve
pm2 save
(pm2 save 很重要, 它保存當(dāng)前pm2 正在管理的NodeJS服務(wù), 并在開機后恢復(fù)這些服務(wù)抛虏,保存路徑為系統(tǒng)環(huán)境變量設(shè)置的PM2_HOME路徑嘉蕾。)
至此,開機自動啟動完成。
查看代碼運行狀態(tài)
pm2 monit
從此再也不用擔(dān)心easy-mock官網(wǎng)不定時的崩掉了
參考網(wǎng)址
easy-mock 本地部署過程
Easy Mock部署使用
使用pm2自動化部署node項目
windows下配置pm2開機自動開啟服務(wù)