linux 上部署 YApi 可視化接口管理平台:
YApi 是一個高效、易用、功能強大的可視化接口管理平台,官方地址 : http://yapi.demo.qunar.com/
環境要求
- nodejs(7.6+): 本次安裝版本:v12.16.1
- mongodb(2.6+):
- git:
先上效果圖:

具體步驟:
1、安裝node.js
1.1官網下載:https://nodejs.org/en/download/
1.2 上傳服務器並解壓
創建目錄:
mkdir /home/tools/
解壓:
tar -xvf /home/tools/node-v12.16.1-linux-x64.tar.xz
重命名解壓文件夾名:
mv node-v12.16.1-linux-x64.tar.xz nodejs
解壓成功之后即是可以運行的二進制文件,只需要為node和npm建立兩個軟連接,使之可以全局運行即可:
//前面地址為實際地址
ln -s /home/tools/nodejs/bin/node /usr/local/bin/node
ln -s /home/tools/nodejs/bin/npm /usr/local/bin/npm
以后在任意路徑下都可以執行node 和 npm兩個命令了,但是由於一些原因,npm在中國的下載速度並不是很理想,我們可以安裝淘寶提供的cnpm來代替其功能,執行以下命令即可全局安裝cnpm。之后可以直接使用cnpm代替npm,命令格式是一樣的。官方網址 : https://npm.taobao.org/
npm install -g cnpm --registry=https://registry.npm.taobao.org
至此nodejs安裝完畢,可以輸入以下命令查看node和npm的版本信息:
node -v
npm -v
運行結果:

2、安裝MongoDB
2.1官網下載地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.13.tgz
2.2解壓壓縮包:
tar -xvf mongodb-linux-x86_64-4.0.13.tgz
2.3重命名解壓后的文件夾:
mv mongodb-linux-x86_64-4.0.13 mongodb
2.4配置系統環境變量,將mongod路徑添加到系統路徑中,方便隨處執行mongod命令:
vim /etc/profile
鍵盤按下“i”進入編輯模式即可。在文件的最后加上:
#mongodb 20200404
export PATH=$PATH:/home/tools/mongodb/bin
最后按下“Esc”,輸入“:wq”保存退出vi編輯模式,
source /etc/profile
使系統環境變量立即生效。

2.5創建MongoDB數據存放文件夾和日志記錄文件夾,為后面的配置文件使用:
mkdir -p /home/tools/mongodb/data
mkdir -p /home/tools/mongodb/logs
2.6 創建MongoDB運行時使用的配置文件:
vim /home/tools/mongodb/bin/mongod.cfg
再輸入以下配置內容:
dbpath = /home/tools/mongodb/data #數據文件存放目錄
logpath = /home/tools/mongodb/logs/mongod.log #日志文件存放目錄
port = 27017 #端口
fork = true #以守護程序的方式啟用,即在后台運行
#auth=true #需要認證。如果放開注釋,就必須創建MongoDB的賬號,使用賬號與密碼才可遠程訪問,第一次安裝建議注釋
bind_ip=0.0.0.0 #允許遠程訪問,或者直接注釋,127.0.0.1是只允許本地訪問
esc退出 ,輸入
:wq
保存退出vim編輯模式即可。注意:注釋符號#和數據之間必須是一個空格。

2.7啟動MongoDB服務:
進入bin目錄下,加載配置文件方式啟動:
cd /home/tools/mongodb/bin
./mongod -f mongod.cfg

查看端口映射檢查是否啟動成功:
netstat -nltp|grep mongod
顯示:

或者:
netstat -nltp|grep 27017
顯示:

或者:
ps -ef | grep mongo
顯示:

或者:
top
顯示:
![]](/image/aHR0cHM6Ly9pbWctYmxvZy5jc2RuaW1nLmNuLzIwMjAwNDE0MDkyNjI3Mjg1LnBuZw==.png)
2.8 關閉MongoDB服務
2.8.1 mongod命令關閉
./mongod -f mongod.cfg --shutdown
注意要加上配置文件路徑參數,和啟動時一致,否則會找默認目錄,導致報錯:

這樣能干凈的關閉 MongoDB 服務,會釋放內存中MongoDB占用的內存,推薦使用。
2.8.2 kill進程
ps -ef | grep mongo
kill -9 xxx(pid)
有時可能會出現錯誤關不掉時就可使用這種強制方式,但注意這種方式可能並不會馬上釋放內存中MongoDB占用的內存,且如果這時候有數據往MongoDB新增可能會導致數據丟失。
3.安裝Git
3.1 從GitHub上下載最新的源碼編譯后安裝
進入git在GitHub上發布版本頁面https://github.com/git/git/releases,這個頁面我們可以找到所有git已發布的版本。這里我們選擇最新版的tar.gz包。

3.2 上傳並解壓
tar -xvf git-2.26.0.tar.gz
解壓后重命名解壓后的文件夾
mv git-2.26.0 git_source
3.3 編譯源碼
進入到解壓后的文件夾進行源碼編譯,
cd git_source
不過在此之前需要安裝編譯所需要的依賴:
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

耐心等待安裝完成,中途出現提示的時候輸入y並按回車:

至此,依賴安裝完成。
3.4 編譯git源碼
make prefix=/home/tools/git all
3.5 安裝git 至 /home/tools/git 路徑
make prefix=/home/tools/git install
3.6 配置環境變量
vi /etc/profile
在底部加上
export PATH=$PATH:/home/tools/git/bin
( 輸入 :wq! 保存修改)
刷新環境變量
source /etc/profile
3.7 查看Git是否安裝完成
git --version
至此,從github上下載最新的源碼編譯后安裝git完成。
4 部署yapi
第一步:安裝
npm install -g yapi-cli --registry https://registry.npm.taobao.org
第二步:配置yapi
ln -s /home/tools/node/bin/yapi /usr/bin/yapi
第三步:啟動配置
如果不進行第二步,配置,可能會找不到yapi
yapi server
打開鏈接 http://127.0.0.1:9090 進行初始化配置


備注:

初始化時候mangodb數據庫初始化失敗,解決方法:
修改文件 /home/tools/yapi/my-yapi/vendors/server/utils/db.js 在原來的22行位置
let options = {useNewUrlParser: true, useCreateIndex: true}
添加useUnifiedTopology: true選項,刪除mongo里面的數據庫,和init.lock文件,然后執行npm run install-server
第四步:啟動服務器
node /home/tools/yapi/my-yapi/vendors/server/app.js
打開鏈接 http://127.0.0.1:3000 進行訪問即可
部署問題:
使用Xshell啟動服務,當關閉Xshell,服務也隨之關閉
解決:
使用pm2部署
第一步:安裝pm2
npm install -g pm2
第二步:配置連接pm2
ln -s /home/tools/node/bin/pm2 /usr/bin/pm2
第三步:在項目添加配置文件my-yapi_processes.json
my-yapi_processes.json文件可自定義
添加如下內容:
{
"apps" : [{
"name" : "my-yapi",
"script": "/home/tools/yapi-my-yapi/vendors/server/app.js",
"cwd": "./",
"watch":[
"server",
"static",
"test",
"exts",
"common"
]
}]
}
啟動服務:
pm2 start /home/tools/yapi/my-yapi/vendors/my-yapi_process.json
結果如下:

關閉服務:
pm2 stop /home/tools/yapi/my-yapi/vendors/my-yapi_process.json
結果如下:

