前言
因为最近换了新公司,前后端对接中没有没有应用任何接口文档零碎,间接都是丢个txt或者word文件,为了晋升开发效率,尝试了应用YApi进行接口文档治理。
YApi旨在为开发、产品、测试人员提供更优雅的接口治理服务,能够帮忙开发者轻松创立、公布、保护 API。反对权限管制、可视化接口治理、mock接口、自动化测试、数据导入、插件机制等性能。同时反对内网本人部署,我的项目由去哪儿网大前端技术核心保护,应用了Koa + mongoose框架开发,不论是部署还是配置方面对前端很敌对,那么接下来开整吧!
环境筹备
因为YApi是基于node开发,数据存储在mongodb数据库,因而在装置之前须要在服务器装置node和mondodb。
mongoDB装置
- 下载mongodb安装包,下载地址:点我能够间接下载压缩包
下载后在服务器解压
tar -xvf mongodb-linux-x86_64-ubuntu2004-4.4.5
- 解压后重命名
mv mongodb-linux-x86_64-ubuntu2004-4.4.5/ mongodb
- 将mongodb文件夹挪动到/usr/local
mv mongodb /usr/local
- 增加环境变量
sudo vim /etc/profile
- 增加以下内容并保留
export PATH=/usr/local/mongodb/bin:$PATH
使批改失效
source /etc/profile
- 创立用于存放数据和日志文件的文件夹,并批改其权限减少读写权限
# 数据存储目录sudo mkdir -p /var/lib/mongo# 日志文件目录sudo mkdir -p /var/log/mongodbsudo chown `whoami` /var/lib/mongo # 设置权限sudo chown `whoami` /var/log/mongodb # 设置权限
- 在/usr/local/mongodb/bin上面减少配置文件
# 数据文件寄存目录dbpath = /var/lib/mongo# 日志文件寄存目录logpath = /var/log/mongodb/mongodb.log#端口port = 27017#是否认证,后续会改成trueauth = false#近程连贯要指定ip 不然无奈连贯。0.0.0.0不限度ip拜访,并开启对应端口bind_ip = 0.0.0.0
nodejs装置
这里我应用的是压缩包的形式装置,其实应用ubuntu自身的命令装置会更不便,如下:
装置nodejs,装置实现通过node -v查看是否装置胜利apt-get install nodejs装置npm,装置实现通过npm -v查看是否装置胜利apt-get install npm装置pm2,装置实现通过pm2 -v查看是否装置胜利sudo npm install -g pm2
因为应用了压缩包的形式,前面装了npm、pm2、n的时候还须要配置软链接,所以不倡议大家应用压缩包形式装置。
- 下载nodejs安装包,下载地址:点我间接下载
下载后在服务器解压:
tar -xvf node-v14.16.1-linux-x64.tar.xz
解压后重命名文件夹:
mv node-v14.16.1-linux-x64 nodejs
将nodejs文件夹挪动到/usr/local
mv nodejs /usr/local
增加软链接
ln -s /usr/local/nodejs/bin/node /usr/local/binln -s /usr/local/nodejs/bin/npm /usr/local/bin
查看是否装置胜利
node -vnpm -v
装置pm2与n进行治理
npm install -g pm2npm install -g n
增加软链接
ln -s /usr/local/nodejs/bin/pm2 /usr/local/binln -s /usr/local/nodejs/bin/n /usr/local/bin
查看是否装置胜利
n -Vpm2 -v
- 装置胜利
装置node的时候不要装置版本太高,因为后续装置yapi时候node版本太高导致报错了,因而装置10.x左右的版本就行。
启动mongodb
启动mongodb,进入usr/local/mongodb/bin
执行以下命令,--fork指的是在后盾运行,能够先不加,等前面都配置好了再进行启动即可。
./mongod -f mongodb.conf --fork
- 配置明码登陆
执行mongo
命令进去shell,执行以下命令创立一个管理员用户
1、use admin2、db.createUser({user:"admin", pwd: "adminpassword", roles: [{role: "userAdminAnyDatabase", db: "admin"}]})# 用户名为admin,明码为adminpassword,针对admin数据库创立3、db.auth('admin','adminpassword') # 验证是否创立胜利
这样则示意创立胜利
- 在配置文件开启权限认证,关上/usr/local/mongodb/bin/mongodb.conf文件将auth设置为true
敞开mongodb服务,并从新开启,就能够应用明码进行连贯mongodb了
./mongod -f mongodb.conf --shutdown./mongod -f mongodb.conf --fork
装置yapi
YApi官网提供了可视化部署和命令行部署两种形式,可视化部署形式是在服务器起了一个node服务,在浏览器依据须要填入相干配置后主动部署,命令行形式则是本人批改配置文件后进行部署。具体操作可查看这里
npm install -g yapi-cli --registry https://registry.npm.taobao.org
增加软链接(因为后面装置node的形式导致这里须要再解决一下)
ln -s /usr/local/nodejs/bin/yapi /usr/local/bin
- 执行
yapi server
启动装置服务,默认端口9090 - 防火墙开启9090端口,浏览器输出拜访地址
http://ip:9090
开始装置 装置过程中须要有mongodb数据库的用户名和明码,咱们之前建设的是admin数据库的用户名和明码,因为这里咱们须要再建设一个yapi数据库的明码
1、use yapi2、db.createUser({user:"admin", pwd: "adminyapi", roles: [{role: "readWrite", db: "yapi"}]})# 用户名为admin,明码为adminyapi,针对yapi数据库创立3、db.auth('admin','adminyapi') # 验证是否创立胜利
- 建设好当前就能够进行装置了,数据库地址填写服务器IP,其余的依据本人的状况填写即可。我在这里应用了navicat进行登陆数据库看了看,Authentication就是指你具体要连贯哪个数据库。
- 装置实现后通过http://ip:3000进行拜访即可进...
注意事项:服务器的平安组记得开始口9090、3000、27017三个
总结
整体装置过程比较简单,官网的脚手架用着也很不便,麻烦的就是mongodb的装置和配置,然而如果用的纯熟的话也没有什么问题的。
参考
- 官网应用文档: https://hellosean1025.github.io/yapi/documents/index.html
- 官网部署文档: https://hellosean1025.github.io/yapi/devops/index.html
环境搭建文档: https://zhuanlan.zhihu.com/p/95880755
本文由博客群发一文多发等经营工具平台 OpenWrite 公布