阿里云从零搭建yapi可视化管理平台
介绍
Yapi是去哪儿网开源的一款接口管理工具。接口的文档的管理是一件比较痛苦的事情,后端开发不得不使用很长的时间去维护繁杂冗余的文档,而前端开发也因为文档的不精确也浪费开发时间。
工作中接口返回的参数值包含很多的异常场景,前端不得不写一大串的判断逻辑。配合前段调试需要模拟很多场景,比较费时费力,而且很多场景到了项目后期才能调试,在提交测试时时间就会显得很紧张。
总结起来文档式的接口管理方式浪费心里和时间,Aapi这款工具的旨意将接口作为一个公共的可视化的方式打通前段、后台、测试环节,整合在一块,共同使用维护,降低接口的维护成本。
这款工具免费开源,部署简单,还具有官方文档。
这是从链接:https://www.jianshu.com/p/5bda5556c149 借来的前言,此文章对于搭建yapi的讲解非常细致,但是我们搭建的过程总不是那么顺利的,我来一步步的执行并记录处理过程中遇到的问题。ps:我已经搭建失败了两个服务器,新买了一个月的服务器来准备随时重置
1、端口设置
如果我们用的是云服务器,那么我们要先在安全组策略中把9090端口开放,因为在yapi搭建的最后又可视化操作时使用的端口就是9090,我的是阿里云的服务器,配置安全组相信大部分人都会,但是本着细致的精神就简单说一下
1、
2、
3、
安装环境准备
- 操作系统:centos 7
- 环境要求:
- nodejs>7.6
- mongodb>2.6
- git
安装nodejs
- 获取资源(部署nodejs尽可能选择偶数版本,因为偶数版本官方有较长的维护时间,故这次选择8.x。)
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
- 安装
yum install -y nodejs
- 查看版本
node -v
- 查看npm版本
npm -v
安装mongodb
- 更新yum源,非必须但是更新一下无害
yum -y update
- 添加mongodb源文件,在/etc/yum.repos.d 创建一个 mongodb-org.repo 文件
touch /etc/yum.repos.d/mongodb-org.repo
- 编辑mongodb-org.repo文件
vim /etc/yum.repos.d/mongodb-org.repo
- 添加文件内容
[mongodb-org]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=1
- 安装mongodb
yum install -y mongodb-org
- 启动mongodb
service mongod start
- 设置开机启动
chkconfig mongod on
- 打开moMongoDB(可忽略)
/bin/mongo
- 配置远程访问
- 修改mongod.conf配置文件
vim/etc/mongod.conf
- 注释 bindIp: 127.0.0.1
#bindIp: 127.0.0.1
- 重启mongod
service mongod restart
安装git
- 官方推荐,在内网部署的时候安装git,可以根据自己所需安装
yum -y install git
搭建YApi环境
搭建YApi
- 准备环境搭建完成后,开始搭建YApi,安装命令
npm install -g yapi-cli --registry https://registry.npm.taobao.org yapi server
-
实例截图:
- 执行 yapi server 启动可视化部署程序,浏览器打开提示窗口上的地址,非本地服务器,将0.0.0.0替换指定的域名或IP,进入部署页面。
- 这时候就用到刚才的设置安全组了,如果没有设置安全组的入,我们的9090端口是不允许我们外部访问的
配置好9090端口后就可以正常访问
填写公司名称后点击开始部署就会自动部署,如果没报错恭喜你顺利安装,我在这就又遇到了初始化数据库mongdb的错误
可以看到提示信息,数据库链接的设置,根据错误提示我们找到了是在node环境使用mongoose,参考地址:https://blog.csdn.net/WU5229485/article/details/100737164
我们找到了一篇相关的错误文章:https://www.cnblogs.com/superhin/p/12340560.html
但是我们没有他相应的地址:
在知道了是在utils.js里写的链接,我们先进到my-yapi文件中
随后使用命令:
find -name utils.js
查询到了目录下所有的utils.js的文件
排查里面那些调用mongdb的js来进行设置:useUnifiedTopology: true
里面标红的是唯一配置options 的,来看一下源代码
修改后