团队API管理工具-YAPI
推荐一款接口管理平台,操作简单、界面友好、功能丰富、支持markdown语法、可使用Postman导入、Swagger同步数据展示、LDAP、权限管理等功能。
YApi是高效、易用、功能强大的api管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护API,YApi还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。
特性
- 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
- 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
- 类似 postman 的接口调试
- 自动化测试, 支持对 Response 断言
- MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据
- 支持 postman、har、swagger、json 数据导入
- 基于mongodb数据库做数据持久化存储
- 免费开源,长期维护,内网部署
成员管理
接口管理
历史操作记录
数据管理(导入/导出)
支持swagger同步
支持自动化测试、mock测试
支持LDAP管理
K8s编排部署
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: yapi
name: yapi
namespace: default
spec:
revisionHistoryLimit: 3
selector:
matchLabels:
app: yapi
template:
metadata:
labels:
app: yapi
spec:
restartPolicy: Always
containers:
- name: yapi
image: jayfong/yapi:1.10.2
imagePullPolicy: Always
ports:
- containerPort: 3000
name: yapi
protocol: TCP
env:
# 管理员账号
- name: YAPI_ADMIN_ACCOUNT
value: "admin@test.com"
# 管理员默认密码,可以登陆修改
- name: YAPI_ADMIN_PASSWORD
value: "123456"
# 禁止注册
- name: YAPI_CLOSE_REGISTER
value: "true"
# npm源
- name: YAPI_NPM_REGISTRY
value: "https://registry.npm.taobao.org"
# mongodb配置
- name: YAPI_DB_SERVERNAME
value: "127.0.0.1"
- name: YAPI_DB_PORT
value: "27017"
- name: YAPI_DB_DATABASE
value: "yapi"
- name: YAPI_DB_USER
value: "root"
- name: YAPI_DB_PASS
value: "123456"
- name: YAPI_DB_AUTH_SOURCE
value: "admin"
# 邮件配置(自行配置授权参数)
- name: YAPI_MAIL_ENABLE
value: "true"
- name: YAPI_MAIL_HOST
value: "smtp.exmail.qq.com"
- name: YAPI_MAIL_PORT
value: "465"
- name: YAPI_MAIL_FROM
value: "admin@test.com"
- name: YAPI_MAIL_AUTH_USER
value: "xxx"
- name: YAPI_MAIL_AUTH_PASS
value: "xxx"
# 可自行配置LDAP功能
- name: YAPI_LDAP_LOGIN_ENABLE
value: "false"
resources:
requests:
cpu: 500m
memory: 512Mi
limits:
cpu: 1000m
memory: 1024Mi
---
apiVersion: v1
kind: Service
metadata:
name: yapi-svc
namespace: default
spec:
type: NodePort
ports:
- name: yapi-svc-port
protocol: TCP
port: 3000
targetPort: 3000
nodePort: 30000
selector:
app: yapi
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: yapi-ingress
namespace: default
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
ingressClassName: nginx
rules:
- host: yapi.test.com
http:
paths:
- pathType: Prefix
path: /
backend:
service:
name: yapi-svc
port:
number: 3000
如果是使用docker部署,则将对应镜像pull,使用docker-compose 将对应的参数变量通过env传入,暴露对应的端口或接入nginx即可访问
LDAP配置参考(https://github.com/fjc0k/docker-YApi#ldap-%E7%99%BB%E5%BD%95%E9%85%8D%E7%BD%AE)
我是六涛sheliutao,文章编写总结不易,转载注明出处,喜欢本篇文章的小伙伴欢迎点赞、关注,有问题可以评论区留言或者私信我,相互交流!!!
参考
- Yapi
- 最新Yapi pro