linux-centos7搭建Easymock項目

在做前後端分離項目的時候,前端工程師往往需要很多mock數據;人工手造數據不太現實,於是可以利用Easy-mock來完成這項大工程。

easy-mock是大搜車團隊開源的用於mock後端響應到前端的數據,你可以在easy-mock官網上創建自己的項目接口,但官網經常無法訪問,這就很蛋疼了。不過,好在easy-mock是個開源項目,所以我們可以下載源碼自行搭建服務。經過兩天的折騰,終於搞定了;下面記錄搭建的過程以及踩過的坑。

系統環境:linux centos7 64位 虛擬機環境安裝linux系統
用戶:root

1 安裝Node軟件

提前說明:node版本爲v8.x,不要使用高版本,不要使用高版本,不要使用高版本;我之前安裝過V12.x的node,後來啓動就報錯,無奈之下換回V8.x就好了。
下載軟件:

https://npm.taobao.org/mirrors/node/v8.10.0/node-v8.10.0-linux-x64.tar.xz

安裝過程:
cd /usr/local   // 進入node安裝目錄,後續軟件統一都安裝在該目錄下
rz   // 利用rz命令上傳本地文件到linux服務器,如果沒有該命令可以使用yum install lrzsz安裝
xz -d node-v8.10.0-linux-x64.tar.xz
tar -xvf node-v8.10.0-linux-x64.tar
mv node-v8.10.0-linux-x64 nodejs   // 重命名爲nodejs
vi /etc/profile   //  配置環境變量

//  在文件中增加如下環境變量:
export NODE_HOME=/usr/local/nodejs
export PATH=${PATH}:$NODE_HOME/bin

source /etc/profile  //  使其生效
node –v  // 查看當前node版本
npm –v  // 查看當前npm版本

2 安裝redis軟件

軟件下載:

http://download.redis.io/releases/redis-4.0.14.tar.gz
官網要求redis版本必須大於V4.0

安裝過程:
cd /usr/local                    //  進入安裝目錄
rz                               // 上傳redis安裝包
tar xvzf redis-stable.tar.gz     // 解壓
cd redis-4.0.14/                 // 進入到解壓後的文件夾,進行編譯
yum install -y gcc               //  編譯前使用yum安裝gcc編譯器
make                             //  編譯,需要一會兒;編譯完成後會生成redis-server和redis-cli
cp src/redis-server /usr/local/bin       //  redis服務啓動命令放到全局,便於後續利用
cp src/redis-cli /usr/local/bin          //  redis客戶端命令放到全局,便於後續利用
vi redis.conf                    //  打開redis.conf配置文件,後續啓動需要依賴此配置文件

// 修改該文件的三處配置:
bind 127.0.0.1 修改爲 # bind 127.0.0.1  使得外部ip可以訪問
protected-mode yes修改爲protected-mode no //  不啓動保護模式,便於外部訪問
daemonize no修改爲daemonize yes

redis-server redis.conf                 // 利用redis.conf配置文件啓動redis服務
// 若想要看redis-server服務是否啓動,可以通過下面的命令查看:
netstat -lnap | grep "6379"             //  6379是redis服務默認的端口號
//  關閉redis服務使用命令 在修改配置文件之前確保redis服務沒有啓動
redis-cli shutdown

3 安裝mongodb數據庫

下載軟件:

https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.13.tgz

安裝過程:
cd /usr/local
tar zxvf mongodb-linux-x86_64-3.6.13.tgz
mv mongodb-linux-x86_64-3.6.13.tgz mongodb     //  重命名爲mongodb
vi /etc/profile                                //  增加全局配置

// 配置文件增加:
export MONGODB_HOME=/usr/local/mongodb
export PATH=${PATH}:$NODE_HOME/bin:$MONGODB_HOME/bin

source /etc/profile                           //  使配置文件生效

mkdir -p /usr/local/mongodb/data              // 創建mongodb數據文件
mkdir -p /usr/local/mongodb/logs              // 創建mongodb日誌文件
cd /usr/local/mongodb/
vi mongo.conf                                 // 新建mongodb配置文件

// 配置文件內容如下
dbpath=/usr/local/mongodb/data
logpath=/usr/local/mongodb/logs/mongo.log
logappend=true
journal=true
quiet=true
bind_ip_all=true
port=27017
fork=true   // 後臺運行

cd /usr/local/mongodb
bin/mongod –f mongo.conf                    // 啓動mongodb服務

若搭建過程遇見48,100等錯誤代碼,可以參考此方法解決

4 拉取easy-mock代碼

yum install –y git                                     // 安裝git
git clone https://github.com/easy-mock/easy-mock.git   // git克隆倉庫代碼
cd easy-mock
npm install                               // 安裝項目依賴的插件 耗時較長
vi config/default.json                    // 修改配置文件

把配置文件內兩處name爲“host”的值改爲ip,這樣便於提供服務。修改後的配置文件爲:

{
  "port": 7300,
  "host": "192.168.198.129",    //  localhost修改爲ip
  "pageSize": 30,
  "proxy": false,
  "db": "mongodb://127.0.0.1/easy-mock",
  "unsplashClientId": "",
  "redis": {
    "keyPrefix": "[Easy Mock]",
    "port": 6379,
    "host": "192.168.198.129",  // localhost修改爲ip
    "password": "",
    "db": 0
  },
  "blackList": {
    "projects": [],
    "ips": []
  },
  "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
    }
  },
  "ldap": {
    "server": "",
    "bindDN": "",
    "password": "",
    "filter": {
      "base": "",
      "attributeName": ""
    }
  },
  "fe": {
    "copyright": "",
    "storageNamespace": "easy-mock_",
    "timeout": 25000,
    "publicPath": "/dist/"
  }
}
systemctl stop firewalld.service   //  關閉防火牆

5 安裝pm2並啓動服務

npm install –g pm2        //全局安裝pm2
pm2 –v                   // 查看pm2版本 如果出現未找到pm2命令,則執行下面命令
ln -s /usr/local/nodejs/node_global_path/bin/pm2 /usr/local/bin  //建立軟連接
pm2 start /usr/local/easy-mock/app.js  // 啓動後臺服務

如果出現下面信息則表明啓動成功:
啓動成功

6 訪問並登錄

訪問首頁

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章