YApi简介及内网部署

官网:https://hellosean1025.github.io/yapi/

体验地址:https://yapi.baidu.com

目录

2. 内网部署

2.1 环境要求

2.1.1 安装nodejs

2.1.2 安装mongodb

2.2 可视化部署

2.3 启动YApi

2.4 forever运行app.js

2.4.1 forever简介

2.4.2 forever安装和使用

2.4.3 以forever启动yapi

3. 效果预览


YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

特性

  • 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
  • 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
  • 类似 postman 的接口调试
  • 自动化测试, 支持对 Response 断言
  • MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据
  • 支持 postman, har, swagger 数据导入
  • 免费开源,内网部署,信息再也不怕泄露了

2. 内网部署

2.1 环境要求

  • nodejs(7.6+)
  • mongodb(2.6+)

2.1.1 安装nodejs

# 安装nodejs apt install nodejs # 安装npm apt install npm # 镜像npm,安装cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org

2.1.2 安装mongodb

MongoDB 源码下载地址:https://www.mongodb.com/download-center#community

 

 

这里我们选择 tgz 下载,下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。

# 下载
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1604-4.2.8.tgz
# 解压
tar -zxvf mongodb-linux-x86_64-ubuntu1604-4.2.8.tgz
# 将解压包拷贝到指定目录
mv mongodb-src-r4.2.8  /usr/local/mongodb
# MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:
export PATH=/usr/local/mongodb4/bin:$PATH
# 创建数据库目录
sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
# 启动 Mongodb 服务
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork

验证mongo安装

root@daicytest01:~# cd /usr/local/mongodb4/bin/
root@daicytest01:/usr/local/mongodb4/bin# ./mongo
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

 

2.2 可视化部署

npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
在浏览器打开 http://0.0.0.0:9090 访问。非本地服务器,请将 0.0.0.0 替换成指定的域名或ip

 

按需求填写,写好后,点击开始部署,项目即可正常部署完成。

部署完成后,如果需要修改端口号,可进入配置文件修改。

配置文件路径:$(部署目录)/config.json

{
   "port": "4000",
   "adminAccount": "admin@admin.com",
   "db": {
      "servername": "127.0.0.1",
      "DATABASE": "yapi",
      "port": "27017"
   },
   "mail": {
      "enable": false,
      "host": "smtp.163.com",
      "port": 465,
      "from": "***@163.com",
      "auth": {
         "user": "***@163.com",
         "pass": "*****"
      }
   }
}

 

2.3 启动YApi

node vendors/server/app.js

root@daicytest01:/usr/local/my-yapi# node vendors/server/app.js 
log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问: 
http://127.0.0.1:4000/
log: mongodb load success...

此时,会提示服务已启动,这是可以访问 ip:4000即可打开网站,并登录。

默认内置管理员账号:admin@admin.com 密码:ymfe.org

 

但这样运行有一个问题,node服务不能退出,一旦关闭连接终端,或者Ctrl C执行其他的命令时,服务就会停止。

所以需要用后台执行node命令,使node持续运行。

 

2.4 forever运行app.js

2.4.1 forever简介

forever可以看做是一个nodejs的守护进程,能够启动,停止,重启我们的app应用。

A simple CLI tool for ensuring that a given script runs continuously (i.e. forever).

// 一个用来持续(或者说永远)运行一个给定脚本的简单的命令行工具

forever的用途就是帮我们更好的管理我们node App服务,本质上就是在forever进程之下,创建一个node app的子进程。

 

2.4.2 forever安装和使用

全局安装 
cnpm install forever -g
常用命令
启动相关
// 1. 简单的启动
forever start app.js
// 2. 指定forever信息输出文件,当然,默认它会放到~/.forever/forever.log
forever start -l forever.log app.js
// 3. 指定app.js中的日志信息和错误日志输出文件,
// -o 就是console.log输出的信息,-e 就是console.error输出的信息
forever start -o out.log -e err.log app.js
// 4. 追加日志,forever默认是不能覆盖上次的启动日志,
// 所以如果第二次启动不加-a,则会不让运行
forever start -l forever.log -a app.js
// 5. 监听当前文件夹下的所有文件改动,并重启服务
forever start -w app.js
// 6. 显示所有运行的服务
forever list
停止操作
// 1. 停止所有运行的node App
forever stopall
// 2. 停止其中一个node App
forever stop app.js
// 当然还可以这样
// forever list 找到对应的id,然后:
forever stop [id]
重启操作
// 1. 启动所有
forever restartall
// 2. 重启其中一个node App
forever restart app.js

2.4.3 以forever启动yapi

# 启动yapi
root@daicytest01:/usr/local/my-yapi# forever start vendors/server/app.js
warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info:    Forever processing file: vendors/server/app.js
# 查看启动列表
root@daicytest01:/usr/local/my-yapi# forever list
info:    Forever processes running
data:        uid  command       script                forever pid     id logfile                 uptime       
data:    [0] fyr6 /usr/bin/node vendors/server/app.js 1163506 1163513    /root/.forever/fyr6.log 0:0:0:18.709 

 

3. 效果预览

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值