一篇文章搞定easy-mock雲服務部署(在本身的vps上愉快地玩耍easy-mock)

寫這篇文章是由於網上雖然部署easy-mock的教程不少,可是不少都是本地部署,若是須要用來進行團隊開發光在本地部署確定是不夠的,因此我把本身在虛擬機上部署esay-mock的過程記錄下來,但願能夠幫到有一樣需求而且在部署過程當中碰到困難產生疑惑的朋友。html

一、購買虛擬機、啓動、鏈接

購買過程略(沒有的能夠搜vps),deploy的時候系統選擇centos7。node

2. 安裝node

我安裝的是8.9.0版本,根據官網上的說法,10以上會有兼容問題。
easy-mocklinux

具體過程:
cd到你的目錄下
下載,解壓,重命名:nginx

wget https://nodejs.org/dist/v8.9.0/node-v8.9.0-linux-x64.tar.xz
複製代碼
tar xf node-v8.9.0-linux-x64.tar.xz
複製代碼
mv src/node-v8.9.0-linux-x64 node
複製代碼

將node添加至path: vi ~/.bashrcc++

export NODE_HOME=/usr/local/node ##(你本身的node文件夾路徑)
export PATH=$NODE_HOME/bin:$PATH
複製代碼

編譯bashrc腳本: source ~/.bashrcgit

查看安裝是否成功:github

node -v
複製代碼

3.安裝redis

具體過程:
cd到你的目錄下
下載,解壓:redis

wget http://download.redis.io/releases/redis-3.2.1.tar.gz
複製代碼
tar xzf redis-3.2.1.tar.gz
複製代碼

進入文件夾,make,啓動:mongodb

cd redis-3.2.1
make
cd src
./redis-server & 
## &意爲放到後臺執行
複製代碼

我當時照着教程執行到這的時候控制檯報錯了。
error 1:shell

make[3]: gcc: Command not found
複製代碼

緣由是缺乏gcc,安裝

yum install gcc
複製代碼

error 2:

In file included from adlist.c:34:0:
zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory
#include <jemalloc/jemalloc.h>
複製代碼

解決:make MALLOC=libc make成功後,控制檯會提示:Hint: It's a good idea to run 'make test',此時繼續輸入:make test
error 3:

make[1]: Entering directory `/root/software/redis-3.0.0/src' You need tcl 8.5 or newer in order to run the Redis test 複製代碼

緣由:沒有安裝tcl,安裝:yum install -y tcl,安裝完成後輸入make test。 到這,redis安裝基本就沒啥問題了。其實能夠一開始就在控制檯輸入這句命令把沒裝上的都裝上就好了:yum install gcc gcc-c++ tcl -y

3.安裝mongodb

整個配置過程參考: Linux平臺安裝MongoDB
安裝而且source了配置環境後,輸入:

sudo mongo
複製代碼

查看控制檯信息,若是顯示

MongoDB shell version v4.0.0
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.0
Welcome to the MongoDB shell
複製代碼

則說明鏈接成功.

若是顯示

[js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused : 複製代碼

則顯示鏈接失敗,問題通常是沒有刪除dbpath指定的數據庫文件夾下的mongod.lock文件,解決辦法是

rm /data/db/mongod.lock #(輸入你本身的路徑)
複製代碼

而後重置一下以前的配置:

mongod -f  /data/mongodb.conf #(輸入你本身的路徑)
複製代碼

再啓動:mongo

4.easy-mock

下載安裝:

cd /usr/mock ##mock文件夾是我本身新建的
git clone https://github.com/easy-mock/easy-mock.git
cd easy-mock && npm install ## 安裝依賴
複製代碼

配置easy-mock:
default.json文件:

"db": "mongodb://localhost:27017/easy-mock",
複製代碼

由於我須要的是穩定的生產版本,因此須要再安裝pm2而後讓node服務在後臺運行

npm install -g pm2 ## 安裝pm2 
複製代碼

使用pm2 運行全須要先build

npm run build
NODE_ENV=production pm2 start app.js
複製代碼

此時在控制檯會看到運行畫面,表示已經成功運行了。

接下來進行最後一部,安裝配置nginx

5. Nginx配置

詳細的安裝過程能夠看這篇文章:2019 年如何在 CentOS 7 上安裝最新版 Nginx

安裝好以後,打開nginx的默認配置文件,文件路徑通常在/etc/nginx/nginx.conf

vi /etc/nginx/nginx.conf
複製代碼

找到server,修改兩處配置:

root         /usr/mock/easy-mock/dist/  ## easy-mock 打包的地址
location / {
    proxy_pass http://localhost:7300; ## easy-mock配置的地址
}
複製代碼

修改完成後從新加載nginx:

sudo systemctl reload nginx
複製代碼

最後在瀏覽器中輸入你的vps地址就大功告成了。

相關文章
相關標籤/搜索