在我们后端开发中,必不可少的是接口的交接,有很多种方式,常见的就是swagger,不过这个侵入性太强了。还有就是接口文档的框架,比如今天小编带大家一起搭建的yapi,在公司还是挺常见的! 今天小编就大家从搭建到使用,详细的教学一波哈!
YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。
在Docker中只需要搭建一下mongo,用来数据的存储即可!
docker.NETwork create yapi
mkdir -p /data/mongo
docker run -d
--name mongodb
--restart always
--net=yapi
-p 27017:27017
-v /data/mongo:/data/db
-e MONGO_INITDB_DATABASE=yapi
-e MONGO_INITDB_ROOT_USERNAME=yapi
-e MONGO_INITDB_ROOT_PASSword=yapi
mongo
启动 MongoDB,其中 -e 指定 MONGO_INITDB_ROOT_USERNAME 为 MongoDB 的 ROOT 用户名,MONGO_INITDB_ROOT_PASSWORD 为 MongoDB 的 ROOT 用户密码。
进入 MongoDB 容器,从上图查看 MongoDB 容器可以获取到容器 id,以下示例使用 50f1f6c50139
代表 MongoDB 的容器 id,只需要简写即可!
docker exec -it 50 /bin/bash
接着输入:
mongosh
「新版本需要加上sh,不然无法进入!」
use admin;
db.auth("yapi", "yapi");
# 创建 yapi 数据库
use yapi;
# 创建给 yapi 使用的账号和密码,限制权限
db.createUser({
user: 'yapi',
pwd: 'yapi',
roles: [
{ role: "dbAdmin", db: "yapi" },
{ role: "readWrite", db: "yapi" }
]
});
# 退出 Mongo Cli
exit
# 退出容器
Ctrl+P+Q
mkdir -p /data/yapi
vim config.json
{
"port": "3000",
"adminAccount": "wangzhenjun1221@163.com",
"timeout":120000,
"db": {
"servername": "mongo",
"DATABASE": "yapi",
"port": 27017,
"user": "yapi",
"pass": "yapi",
"authSource": ""
},
"mAIl": {
"enable": true,
"host": "smtp.gmail.com",
"port": 465,
"from": "*",
"auth": {
"user": "wangzhenjun1221@163.com",
"pass": "xxx"
}
}
}
:wq退出
docker run -d --rm
--name yapi-init
--link mongodb:mongo
--net=yapi
-v /data/yapi/config.json:/yapi/config.json
yapipro/yapi
server/install.js
我们使用Navicat进行可视化的连接 数据库输入:admin用户名密码都是刚刚配置的:yapi。
连接成功!!
docker run -d
--name yapi
--link mongodb:mongo
--restart always
--net=yapi
-p 3000:3000
-v /data/yapi/config.json:/yapi/config.json
yapipro/yapi
server/App.js
ip:3000http://192.168.84.144:3000/。
初始化管理员账号在上面的 config.json 配置中adminAccount初始化密码就是:yapi.pro。
插件名称:EasyYapi。
找到controller。
选择你要上传的接口,点击对号上传!
填写token。
上传成功:
发送请求时,会提醒你安装,你按照提示安装下载即可!
也可以下载小编的:
链接:https://pan.baidu.com/s/1Bx6nGFjKsQ3ajbnLPcjsSA 提取码:gljt。
直接解压,拖拽到这里就行!
测试完成!!
总的来说搭建还是比较简单,集成和使用也挺好用!非常推荐哈!