Yapi 免费且强大的开发、产品、测试接口管理工具
Yapi为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API。
功能特点:
权限管理 | YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求 |
---|---|
可视化接口管理 | 基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率 |
Mock Server | 易用的 Mock Server,再也不用担心 mock 数据的生成了 |
自动化测试 | 完善的接口自动化测试,保证数据的正确性 |
数据导入 | 支持导入 swagger, postman, har 数据格式,方便迁移旧项目 |
插件机制 | 强大的插件机制,满足各类业务需求 |
私有化部署
使用 yapi-cli 工具,部署 YApi 平台是非常容易的。建议部署成 http 站点,因 chrome 浏览器安全限制,部署成 https 会导致测试功能在请求 http 站点时文件上传功能异常。
环境要求
- nodejs(7.6+)
- mongodb(2.6+)
部署nodejs环境
下载nodejs部署包并解压
cd /usr/local/
wget https://nodejs.org/dist/v13.6.0/node-v13.6.0-linux-x64.tar.gz
tar -xvf node-v13.6.0-linux-x64.tar.gz
mv node-v13.6.0-linux-x64.tar.gz nodejs
创建软连接
# 建立node软链接
ln -s /usr/local/nodejs/bin/node /usr/local/bin
# 建立npm 软链接
ln -s /usr/local/nodejs/bin/npm /usr/local/bin
更换镜像源
# 设置国内淘宝镜像源
npm config set registry https://registry.npm.taobao.org
# 查看设置信息
npm config list
镜像源已更换
[root@localhost ~]# npm config list
; cli configs
metrics-registry = "https://registry.npm.taobao.org/"
scope = ""
user-agent = "npm/6.13.4 node/v13.6.0 linux x64"
; userconfig /root/.npmrc
registry = "https://registry.npm.taobao.org/"
; node bin location = /usr/local/nodejs/bin/node
; cwd = /root
; HOME = /root
; "npm config ls -l" to show all defaults.
[root@localhost ~]#
验证并查看版本
[root@localhost ~]# node -v
v13.6.0
[root@localhost ~]# npm -v
6.13.4
[root@localhost ~]#
以上可以看到nodejs环境已经安装好了
部署mongodb数据库
下载地址:
https://www.mongodb.com/download-center/community
下载并解压
cd /usr/local/
tar -xvf mongodb-linux-x86_64-rhel70-5.0.5.tgz
mv mongodb-linux-x86_64-rhel70-5.0.5 mongodb
创建文件夹
mkdir -p ./data/db
mkdir -p ./logs
mkdir ./conf
[root@localhost mongodb]# ll
total 132
drwxr-xr-x 2 root root 70 Dec 8 20:52 bin
drwxr-xr-x 2 root root 25 Dec 8 20:54 conf
drwxr-xr-x 3 root root 16 Dec 8 20:53 data
-rw-r--r-- 1 root root 30608 Dec 2 23:33 LICENSE-Community.txt
drwxr-xr-x 2 root root 24 Dec 8 20:55 logs
-rw-r--r-- 1 root root 16726 Dec 2 23:33 MPL-2
-rw-r--r-- 1 root root 1977 Dec 2 23:33 README
-rw-r--r-- 1 root root 76823 Dec 2 23:33 THIRD-PARTY-NOTICES
[root@localhost mongodb]#
创建配置文件并修改对应路径
vim ./conf/mongod.conf
systemLog:
#mongodb发送所有日志输出的目标指定为文件
destination: file
#mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
path: /usr/local/mongodb/logs/mongod.log
#当mongos或mongod实例重启时,其会将新条目追加到现有日志文件的末尾。
logAppend: true
storage:
#mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod。
dbPath: /usr/local/mongodb/data/db
journal:
#启用或禁用持久性日志以确保数据文件保持有效和可恢复。
enabled: true
processManagement:
#启用在后台运行mongos或mongod进程的守护进程模式。
fork: true
net:
#服务实例绑定的IP,默认是localhost,为了外部访问,此处应添加局域网ip而非公网ip
bindIp: localhost,192.168.2.224
#绑定的端口,默认是27017
port: 27017
启动
[root@localhost bin]# ./mongod -f ../conf/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 1424
child process started successfully, parent exiting
看到child process started successfully表示已经启动成功、
部署Yapi服务
执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
在浏览器打开 http://0.0.0.0:9090 访问。非本地服务器,请将 0.0.0.0 替换成指定的域名或ip
浏览器访问:ip:9090
输入公司名称,点击开始部署即可
依赖库安装完成,正在初始化数据库mongodb...
> yapi-vendor@1.10.2 install-server /usr/local/nodejs/bin/my-yapi/vendors
> node server/install.js
log: mongodb load success...
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"
部署成功,请切换到部署目录,输入: "node vendors/server/app.js" 指令启动服务器
然后在浏览器打开 http://127.0.0.1:3000 访问
安装部署完成之后,去服务器部署目录
/usr/local/nodejs/bin/my-yapi
输入启动命令
node vendors/server/app.js
[root@localhost my-yapi]# node vendors/server/app.js
log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问:
http://127.0.0.1:3000/
log: mongodb load success...
(node:1588) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated
(node:1588) DeprecationWarning: collection.update is deprecated. Use updateOne, updateMany, or bulkWrite instead.
浏览器访问:ip:3000
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"
相关文章
- 90行代码!大一学生自学编程,自创搜题网站,已在GitHub开源
- Meta 拒绝使用高通芯片,并质疑其配套软件不够成熟
- 新一代数据基础设施:数据智能平台(附下载)
- 被奖12万!凌晨发现实验室漏水,中科大5学生踹门救下2400万设备和九章三号
- Transformer 自然语言处理简介
- 开价20w美元,这家公司想买下你的脸!不限性别年龄,预计2023年投入机器人使用
- Gartner公布首个SSE魔力象限排名
- 众筹十万美元搞火箭,搞研发全靠志愿者!这个“草根”航天组织已经开启载人测试
- 敏捷开发:从理论到团队落地
- 20年老码农分享20条编程经验,你pick哪些?
- 人工智能,“抛弃”真实数据集?
- 实战 | OpenCV如何将不同轮廓合并成一个轮廓(附源码)
- 认识ArcGIS Pro
- 谷歌下一代AI架构、Jeff Dean宣传大半年的Pathways终于有论文了
- 实战 | 文本图片去水印--同时保持文本原始色彩(附源码)
- 小学生们在B站讲算法,网友:我只会阿巴阿巴
- 涨姿势!OpenCV对比度亮度变换竟能用来去水印(附Python/C++源码)
- AI分析手机实现精准扶贫:伯克利研究登上Nature
- 搞多模态不了解最新进展?中科院自动化所撰文首个视觉-语言预训练综述
- 【生信文献200篇】84 原发性和转移性乳腺癌的亚型和基因表达谱