搭建yapi

GIT地址 : https://github.com/YMFE/yapi

文档地址:hellosean1025.github.io/yapi

介绍

YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

特性

  1. 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
  2. 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
  3. 不仅有类似 postman 的接口调试,还有强大的测试集功能
  4. 免费开源,内网部署,信息再也不怕泄露了!
  5. 支持 postman, har, swagger 数据导入

搭建Yapi

环境要求

nodejs(7.6+)
mongodb(2.6+)

安装

方式一. 可视化部署[推荐]

执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。

1
2
3
yum install npm
npm install -g yapi-cli --registry https://registry.npmmirror.com
yapi server

初始化完成之后,管理员账号名 admin@admin.com 密码 ymfe.org

部署成功请切换到部署目录,输入 node vendors/server/app.js 指令启动服务器,然后在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。

1
node vendors/server/app.js 

方式二. 命令行部署

如果 github 压缩文件无法下载,或需要部署到一些特殊的服务器,可尝试此方法

1
2
3
4
5
6
7
8
mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors //或者下载 zip 包解压到 vendors 目录(clone 整个仓库大概 140+ M,可以通过 `git clone --depth=1 https://github.com/YMFE/yapi.git vendors` 命令减少,大概 10+ M)
cp vendors/config_example.json ./config.json //复制完成后请修改相关配置
cd vendors
npm install --production --registry https://registry.npm.taobao.org
npm run install-server //安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置
node server/app.js //启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候

安装后的目录结构如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|-- config.json
|-- init.lock
|-- log
|-- vendors
|-- CHANGELOG.md
|-- LICENSE
|-- README.md
|-- client
|-- common
|-- config_example.json
|-- doc
|-- exts
|-- nodemon.json
|-- npm-debug.log
|-- package.json
|-- plugin.json
|-- server
|-- static
|-- test
|-- webpack.alias.js
|-- yapi-base-flow.jpg
|-- ydocfile.js
`-- ykit.config.js

使用Docker搭建

docker 镜像地址(内附使用教程)https://hub.docker.com/r/silsuer/yapi

1、拉取镜像

docker pull silsuer/yapi

2、运行镜像

docker run -dit -p 27017:27017 -p 9090:9090 -p 3000:3000 silsuer/yapi

3、进入容器

-查看容器ID

docker ps

- 进入容器

docker attach container-id

4、启动mongodb

service mongodb start

5、启动yapi安装程序

yapi server

6、上一步报错了 ,未解决,使用Docker搭建到此结束

pm2安装

1
npm install -g pm2 --registry https://registry.npmmirror.com

后台启动,关闭

我的yapi是安装在/usr/local/my-yapi

启动执行

1
2
pm2 start /opt/my-yapi/vendors/server/app.js --name='yapi'
pm2 start /opt/my-yapi/vendors/server/app.js --yapi

关闭执行

1
pm2 stop /usr/local/my-yapi/vendors/server/app.js

这样以后就可以很方便的用pm2就行启动关闭啦

pm2常用命令

1
2
3
4
5
6
# 显示运行的任务 
pm2 list
# 重启应用 all表示所有 all 可以换成应用name
pm2 restart all
# 停止应用 all表示所有
pm2 stop all

mongodb用户管理

1
2
3
4
5
6
7
8
9
10
//切换数据库
use admin
// 新建管理员用户
db.createUser( { user: "root", pwd: "maoyujie132", roles: [ { role: "root", db: "admin" } ] } )
// 授权
db.auth('root','maoyujie132')
// 切换 yapi 数据库
use yapi
// 新增 yapi 用户
db.createUser( { user: "yapi", pwd: "yapi6666", roles: [ { role: "readWrite", db: "yapi" }, "readWrite" ] } )