yapi简介,安装及使用
简介

YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。
特性
- 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
- 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
- 类似 postman 的接口调试
- 自动化测试, 支持对 Response 断言
- MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据
- 支持 postman, har, swagger 数据导入
- 免费开源,内网部署,信息再也不怕泄露了
安装
方法一
# 安装docker
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 bridge-utils git
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum -y install docker-ce
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
mkdir /etc/docker
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://plqjafsr.mirror.aliyuncs.com"]
}
systemctl start docker && systemctl enable docker
systemctl daemon-reload
git clone https://github.com/Ryan-Miao/docker-yapi.git
cd docker-yapi
docker-compose up
方法二
git clone https://gitee.com/fjc0k/docker-YApi.git
cd docker-YApi/
# 修改 docker-compose.yml 中 yapi-web 下的环境变量 YAPI_ADMIN_ACCOUNT 为你的管理员邮箱,YAPI_ADMIN_PASSWORD 为你的管理员密码。
[root@yapi docker-YApi]# vim docker-compose.yml
- YAPI_ADMIN_ACCOUNT=18621048481@163.com
- YAPI_ADMIN_PASSWORD=VABNCJEMRRYIQYXD
[root@yapi docker-YApi]# docker-compose up -d
通过环境变量配置(推荐)
通过环境变量配置的选项会覆盖通过config.json或者config.js配置的选项。
基础配置
| 环境变量名称 | 类型 | 说明 | 示例 |
|---|---|---|---|
| YAPI_ADMIN_ACCOUNT | string | 管理员账号(邮箱) | admin@foo.bar |
| YAPI_ADMIN_PASSWORD | string | 管理员密码 | adm1n |
| YAPI_CLOSE_REGISTER | boolean | 是否关闭注册,由于 docker-YApi 已
内置相关插件
,你可在关闭注册后在后台手动添加用户 | true |
| YAPI_NPM_REGISTRY | string | npm 源,目前仅在安装插件时使用,默认官方源,国内可以设为淘宝源加速 | https://registry.npm.taobao.org |
数据库配置
| 环境变量名称 | 类型 | 说明 | 示例 |
|---|---|---|---|
| YAPI_DB_SERVERNAME | string | MongoDB 服务地址 | yapi-mongo |
| YAPI_DB_PORT | number | MongoDB 服务端口 | 27017 |
| YAPI_DB_DATABASE | string | 使用的 MongoDB 数据库 | yapi |
| YAPI_DB_USER | string | 登录 MongoDB 服务的用户名 | root |
| YAPI_DB_PASS | string | 登录 MongoDB 服务的用户密码 | r00t |
| YAPI_DB_AUTH_SOURCE | string | MongoDB 身份认证所用库 | admin |
| YAPI_DB_CONNECT_STRING | string | 使用 MongoDB 集群时配置 | mongodb://127.0.0.100:8418,127.0.0.101:8418/yapidb?slaveOk=true |
| YAPI_DB_OPTIONS | json | Mongoose 连接 MongoDB 服务时的额外选项,一般不用设置。请参考:
Mongoose.prototype.connect() | {} |
邮件配置
| 环境变量名称 | 类型 | 说明 | 示例 |
|---|---|---|---|
| YAPI_MAIL_ENABLE | boolean | 是否启用 | true |
| YAPI_MAIL_HOST | string | 邮件服务地址 | smtp.163.com |
| YAPI_MAIL_PORT | number | 邮件服务端口 | 465 |
| YAPI_MAIL_FROM | string | 发送人邮箱 | foo@163.com |
| YAPI_MAIL_AUTH_USER | string | 登录邮件服务的用户名 | bar@163.com |
| YAPI_MAIL_AUTH_PASS | string | 登录邮件服务的用户密码 | f00bar |
| YAPI_MAIL_OPTIONS | json | 传递给 Nodemailer 的额外选项,一般不用设置。请参考:
Nodemailer > SMTP transport | {"tls":{"rejectUnauthorized":false}} |
LDAP 登录配置
| 环境变量名称 | 类型 | 说明 | 示例 |
|---|---|---|---|
| YAPI_LDAP_LOGIN_ENABLE | boolean | 是否启用 | true |
| YAPI_LDAP_LOGIN_SERVER | string | LDAP 服务地址 | ldap://ldap.foo.bar |
| YAPI_LDAP_LOGIN_BASE_DN | string | 登录 LDAP 服务的用户名 | cn=admin,dc=foo,dc=bar |
| YAPI_LDAP_LOGIN_BIND_PASSWORD | string | 登录 LDAP 服务的用户密码 | f00bar |
| YAPI_LDAP_LOGIN_SEARCH_DN | string | 查询用户数据的路径 | ou=users,dc=foo,dc=bar |
| YAPI_LDAP_LOGIN_SEARCH_STANDARD | string | 支持两种值:1、前端登录账号对应的查询字段,如:mail、uid等;2、自定义查询条件,其中%s会被前端登录账号替换,如:&(objectClass=user)(cn=%s) | - |
| YAPI_LDAP_LOGIN_EMAIL_POSTFIX | string | 登录邮箱后缀 | @163.com |
| YAPI_LDAP_LOGIN_EMAIL_KEY | string | LDAP 数据库存储用户邮箱的字段 | |
| YAPI_LDAP_LOGIN_USERNAME_KEY | string | LDAP 数据库存储用户名的字段 | name |
插件配置
插件配置
| 环境变量名称 | 类型 | 说明 | 示例 |
|---|---|---|---|
| YAPI_PLUGINS | json | 要使用的插件列表。点击查看开源 YApi 插件列表 →配置项数据格式:{"name": "插件名称,必须去除前缀 yapi-plugin-","options": "插件配置,没有配置则不必设置"}注意:安装插件会运行 YApi 自带的打包命令,其内存消耗较大,因此,在安装插件时,物理机可用内存最好大于等于4GB,否则,易出现内存溢出错误,导致插件安装失败。 | [{"name":"gitlab","options":{}}] |
项目地址
https://github.com/fjc0k/docker-YApi


使用
使用文档地址
https://hellosean1025.github.io/yapi/documents/index.html
yapi简介,安装及使用的更多相关文章
- Spark简介安装和简单例子
Spark简介安装和简单例子 Spark简介 Spark是一种快速.通用.可扩展的大数据分析引擎,目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark S ...
- Python 3 mysql 简介安装
Python 3 mysql 简介安装 一.数据库是什么 1. 什么是数据库(DataBase,简称DB) 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据 ...
- Linux简介安装、系统启动过程、目录结构
Linux简介安装.系统启动过程.目录结构 Linux 教程 Linux 英文解释为 Linux is not Unix. Linux 简介 Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus ...
- 01 Node.js简介, 安装&配置
Node.js 简介 Node.js 是什么 Node.js 有着强大而灵活的包管理器(node package manager,npm) 目前, 已经有强大第三方工具模块, 例如数据库连接, 网站开 ...
- memcached学习——大纲简介 && 安装(基于centos6.5)、启动、关闭memcached(一)
大纲简介 安装前,先简单介绍一下memcached. memcached是一个免费.开源.高性能的分布式缓存.设计memcached的初衷是为了加快web应用程序,减少DB负载. 安装要求:支持大多数 ...
- GO的初始简书(一)简介安装
已经玩了很长一段时间的golang了,做个gopher,下面我将逐步展示各种go语言的开发,从入门开始哦,完全是凭着自己学习和实践的结果展示,如果有说的不对的,请指正. 简介 go语言是由Google ...
- cobbler简介+安装
(介绍部分的内容部分是借鉴网上的非原创) 回顾pxe+kickstart PXE PXE(preboot execute environment,预启动执行环境) PXE启动原理: 当计 ...
- _1Python简介 安装及版本检测
简介 Python是一种面向对象的解释性计算机程序设计语言,由荷兰人Guido von Rossum于1988年的圣诞节发明,第一个公开发行版于1991年. Python崇尚优美.清晰.简单,是一个优 ...
- Git:一、简介&安装Git 2.20.1
0.Git官网 1.简介 一个分布式版本控制系统. 作用:自动记录每次文件的改动,还可以让同伴协作编辑. 分布式与集中式相比优点在于:版本库在每个人自己电脑上,不需要一直在网上,也不用担心某一个数据库 ...
随机推荐
- 力扣496. 下一个更大元素 I
原题 1 class Solution: 2 def nextGreaterElement(self, nums1: List[int], nums2: List[int]) -> List[i ...
- PVE更新WEB管理地址
PVE也是一台Linux系统,如果PVE更换了网络环境,比如从家里拿到了办公室,那么就需要对其更新网络,才能让其它机器访问到它的8006管理地址. 具体做法是通过修改配置文件来更改IP. 更新网卡配置 ...
- 企业安全_监控Github关键字
目录 Hawkeye GSIL Hawkeye github: https://github.com/0xbug/Hawkeye 教程: https://my.oschina.net/adailinu ...
- 定西+简单dp
定西 ECNU-3531 #include<iostream> #include<cstdio> #include<algorithm> #include<c ...
- OSI协议简述版
OSI简介 OSI只是计算机网络中的一种协议名称缩写,它只是电脑间传输数据的协议,并不代表具体的物理设备,并且这种协议,只是被人为的划分为五层:物理层.数据链路层.网络层.传输层.应用层.记住,它只是 ...
- Java 常见对象 05
常见对象·正则表达式 和 其他类 正则表达式的概述和简单使用 * A:正则表达式 * 是指一个用来描述或者匹配一系列符合某个语法规则的字符串的单个字符串.其实就是一种规则,有自己的特殊应用 * 作用: ...
- 在ASP.NET Core中用HttpClient(二)——发送POST, PUT和DELETE请求
在上一篇文章中,我们已经学习了如何在ASP.NET Core中使用HttpClient从Web API获取数据.此外,我们还学习了如何使用GetAsync方法和HttpRequestMessage类发 ...
- 什么是ETL?
一.ETL概念之背景 随着企业的发展,目前的业务线越来越复杂,各个业务系统独立运营.例如:CRM系统只会生产CRM的 数据:Billing只会生产Billing的数据.各业务系统之间只关心自己的数据, ...
- Vue3手册译稿 - 深入组件 - 自定义事件
本章节需要掌握组件基础 emit我译成发射,觉得发射这个词比较形象的形容将子组件事件发射出来的一个动作. 事件名 像组件和props,事件名也会进行自动转换,如果你在子组件里发射一个驼峰命名的事件,你 ...
- Forms身份验证 知识总结
最简单的Forms验证实现方法:FormsAuthentication.SetAuthCookie()方法,传递一个登录名即可FormsAuthentication.SignOut()方法退出Form ...