YApi是一个免费开源的API管理平台,开发人员可用它来管理、调试接口,并且提供了API文档管理和测试功能,具有友好的UI页面,本文介绍Linux环境如何安装部署YApi接口管理平台。
目录
- 1 环境准备
- 2 安装部署
- 2.1 安装nodejs
- 2.2 安装 MongoDB
- 2.3 启动MongoDB
- 2.4 安装yapi
- 2.5 启动yapi
- 2.5.1 node命令启动
- 2.5.2 pm2方式启动
- 2.6 安装cross-request插件
- 3 参考文档
1 环境准备
YApi离线安装部署主要包括以下安装包:
- mongodb:https://www.mongodb.com/try/download/community
- node:https://registry.npmmirror.com/binary.html?path=node/
- yapi:https://github.com/YMFE/yapi
- pm2:https://github.com/Unitech/pm2/releases
- cross-request插件:https://github.com/YMFE/cross-request
可以直接到这里下载:yapi离线安装部署依赖包资源-CSDN文库
可以使用 yapi-cli 工具来部署 YApi 平台,具体教程可参考官方文档:https://hellosean1025.github.io/yapi/devops/index.html。
2 安装部署
2.1 安装nodejs
登录服务器,进行如下操作:
# 新建文件夹
$ mkdir -p /root/tools/nodejs
# 解压文件
$ tar xvf node-v12.13.0-linux-x64.tar.gz
# 移动文件
$ mv node-v12.13.0-linux-x64/* /root/tools/nodejs
# 添加 node 环境变量
$ vim /etc/profile
export PATH=$PATH:/root/tools/nodejs/bin
# 刷新环境变量
$ source /etc/profile
# 检测软链接是否生效
$ node -v
v12.13.0
# 如果报错,可添加一下软链接
$ ln -s /root/tools/nodejs/bin/npm /usr/local/bin
$ ln -s /root/tools/nodejs/bin/node /usr/local/bin
# 检测软链接是否生效
node -v npm
2.2 安装 MongoDB
安装MongoDB数据库:
# 新建文件夹
$ mkdir -p /root/tools/mongodb
# 解压文件
$ tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
# 移动文件
$ mv mongodb-linux-x86_64-rhel70-7.0.14/* /root/tools/mongodb
# 添加 mongodb 环境变量
$ vim /etc/profile
export PATH=$PATH:/root/tools/mongodb/bin
# 刷新环境变量
$ source /etc/profile
# 检查 mongodb 环境变量是否生效
$ mongod --version
db version v7.0.14
Build Info: {
"version": "7.0.14",
"gitVersion": "ce59cfc6a3c5e5c067dca0d30697edd68d4f5188",
"openSSLVersion": "OpenSSL 1.0.1e-fips 11 Feb 2013",
"modules": [],
"allocator": "tcmalloc",
"environment": {
"distmod": "rhel70",
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
# 如果报错,可添加软链接
$ ln -s /root/tools/mongodb/bin/mongod /usr/bin/mongod
2.3 启动MongoDB
# 切换到 mongodb 文件夹下
$ cd /root/tools/mongodb
# 创建多级文件夹 data/db
$ mkdir -p data/db
# 创建文件 data/mongo.log
$ touch data/mongo.log
# 创建 mongodb.conf 填写如下信息(路径修改为你自己的路径)
$ vim mongodb.conf
dbpath=/root/tools/mongodb/data/db
logpath=/root/tools/mongodb/data/mongo.log
logappend=true
journal=true
quiet=true
fork=true
port=27017
# 启动 mongodb
$ mongod -f /root/tools/mongodb/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 17525
child process started successfully, parent exiting
创建用户名和密码:
# 连接本机的mongodb
$ mongo
>
# 当前所有的数据库
> show dbs
local 0.078GB
use yapi
# 创建用户名/密码
$ db.createUser({user:'admin',pwd:'admin', roles:[{role:'readWrite', db:'yapi'}]})
use admin
# 创建用户名/密码
$ db.createUser({user:'admin',pwd:'admin', roles:[{role:'readWrite', db:'admin'}]})
2.4 安装yapi
yapi安装:
# 新建文件夹
$ tar -xvf yapi.tar
$ cd /root/tools/yapi/
$ cp /root/tools/yapi/vendors/config_example.json ./config.json
# 配置config.json
{
"port": "3000",
"adminAccount": "admin@admin.com",
"db": {
"servername": "127.0.0.1",
"DATABASE": "yapi",
"port": 27017,
"user": "admin",
"pass": "admin",
"authSource": "admin"
},
"mail": {
"enable": false,
"host": "smtp.exmail.qq.com",
"port": 465,
"from": "xxx@xxx.cn",
"auth": {
"user": "xxx@xxx.cn",
"pass": "xxx"
}
}
}
2.5 启动yapi
介绍两种启动方式:
2.5.1 node命令启动
# 初始化数据库
$ cd /root/tools/yapi/vendors
$ npm run install-server
> yapi-vendor@1.10.2 install-server /root/tools/yapi/vendors
> node server/install.js
log: mongodb load success...
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"
# 启动yapi server
$ node server/app.js
log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问:
http://127.0.0.1:3000/
log: mongodb load success...
2.5.2 pm2方式启动
要保证后台保持进程运行,首先需要安装 pm2:
$ npm root -g
/root/tools/nodejs/lib/node_modules
$ cd /root/tools/nodejs/lib/node_modules
# 解压 pm2 文件
$ tar -xvf pm2-5.4.2.tar.gz
$ cd pm2-5.4.2
$ npm install
# 添加 pm2 环境变量
$ vim /etc/profile
export PATH=$PATH:/root/tools/nodejs/lib/node_modules/pm2-5.4.2/bin
# 刷新环境变量
$ source /etc/profile
# 检查 pm2 环境变量是否生效
$ pm -v
# 切换到部署路径下启动
$ cd /root/tools/yapi/
$ pm2 start vendors/server/app.js
[PM2] Starting /root/tools/yapi/vendors/server/app.js in fork_mode (1 instance)
[PM2] Done.
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name │ mode │ ↺ │ status │ cpu │ memory │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 0 │ app │ fork │ 0 │ online │ 0% │ 13.3mb │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
浏览器访问http://127.0.0.1:3000/:
可使用生成的管理员账号名:“admin@admin.com”,密码:"ymfe.org"进行登录,点击注册可注册新用户。
2.6 安装cross-request插件
yapi提供了接口测试服务,需要安装cross-request插件,仅支持 chrome 浏览器,下载地址:https://github.com/YMFE/cross-request
- 打开Chrome浏览器插件管理
chrome://extensions/
- 打开开发者模式
- 点击左边的
加载已解压扩展程序
,选择cross-request文件夹位置即可
安装成功后即可使用yapi进行接口测试:
3 参考文档
- https://github.com/yapi-pro/yapi
- https://url.nodejs.cn/download/
- YMFE/yapi: YApi 是一个可本地部署的、打通前后端及QA的、可视化的接口管理平台 (github.com)
- https://hellosean1025.github.io/yapi/devops/index.html#%e5%ae%89%e8%a3%85
- http://yapi.dapengjiaoyu.com/
- https://hub.docker.com/r/yapipro/yapi