前言介绍
Yapi 由 YMFE 开源,旨在为开发、产品、测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布、维护 API。
-
权限管理
YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求 -
可视化接口管理
基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率 -
Mock Server
易用的 Mock Server,再也不用担心 mock 数据的生成了 -
自动化测试
完善的接口自动化测试,保证数据的正确性 -
数据导入
支持导入 swagger, postman, har 数据格式,方便迁移旧项目 -
插件机制
强大的插件机制,满足各类业务需求
使用 Docker 构建 Yapi
1、创建 MongoDB 数据卷
docker volume create mongo_data_yapi
2、启动 MongoDB
docker run -d --name mongo-yapi -v mongo_data_yapi:/data/db mongo
3、获取 Yapi 镜像,版本信息可在 阿里云镜像仓库 查看
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi
4、初始化 Yapi 数据库索引及管理员账号
docker run -it --rm \
--link mongo-yapi:mongo \
--entrypoint npm \
--workdir /api/vendors \
registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
run install-server
自定义配置文件挂载到目录
/api/config.json
,官方自定义配置文件 -> 传送门
5、启动 Yapi 服务
docker run -d \
--name yapi \
--link mongo-yapi:mongo \
--workdir /api/vendors \
-p 3000:3000 \
registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
server/app.js
使用 Yapi
访问 http://localhost:3000 登录账号 [email protected],密码 ymfe.org
至此,帅气的 Yapi 就可以轻松使用啦!更多文档信息,请参考
其他相关操作
关闭 Yapi
docker stop yapi
启动 Yapi
docker start yapi
升级 Yapi
# 1、停止并删除旧版容器
docker rm -f yapi
# 2、获取最新镜像
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi
# 3、启动新容器
docker run -d \
--name yapi \
--link mongo-yapi:mongo \
--workdir /api/vendors \
-p 3000:3000 \
registry.cn-hangzhou.aliyuncs.com/anoy/yapi \
server/app.js
构建任意版本 yapi 镜像
提示:以下所有文件均放在同一目录下
1、编写 Dockerfile
FROM node:9.2-alpine as builder
RUN apk add --no-cache git python make openssl tar gcc
ADD yapi.tgz /home/
RUN mkdir /api && mv /home/package /api/vendors
RUN cd /api/vendors && \
npm install --production --registry https://registry.npm.taobao.org
FROM node:9.2-alpine
MAINTAINER [email protected]
ENV TZ="Asia/Shanghai" HOME="/"
WORKDIR ${HOME}
COPY --from=builder /api/vendors /api/vendors
COPY config.json /api/
EXPOSE 3000
ENTRYPOINT ["node"]
2、自定义配置文件 config.json
{
"port": "3000",
"adminAccount": "[email protected]",
"db": {
"servername": "mongo",
"DATABASE": "yapi",
"port": 27017
}
}
3、镜像构建脚本 build
echo -e "\033[32m download new package (version $1) \033[0m"
wget -O yapi.tgz http://registry.npm.taobao.org/yapi-vendor/download/yapi-vendor-$1.tgz
echo -e "\033[32m build new image \033[0m"
docker build -t registry.cn-hangzhou.aliyuncs.com/anoy/yapi .
使脚本可执行:
chmod a+x build
4、本地构建镜像,版本列表 -> 传送门
./build <Version>
示例: ./build 1.4.3