对api接口进行管理的软件——YAPI

  • Post author:
  • Post category:其他




YAPI是由由哪哪儿网大前端技术中心(YMFE)团队设计用于进行api接口管理的软件产品,其拥有权限管理,可视化接口管理,易用的模拟服务器,自动化测试,数据导入,插件机制,计在为开发,产品,测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建,发布,维护API。



下面主要来具体阐述如何构建一个雅皮平台软件,参考文档https://yapi.ymfe.org/devops/index.html



关闭防火墙,SELinux



1.安装部署nodejs





1.1下载官方安装包并解压,我下载的是最新版的:https://nodejs.org/dist/v10.14.2/node-v10.14.2-linux-x64.tar.xz

wget -O node-v10.14.2-linux-x64.tar.xz https://nodejs.org/dist/v10.14.2/node-v10.14.2-linux-x64.tar.xz
tar -xf node-v10.14.2-linux-x64.tar.xz



1.2部署环境

mv node-v10.14.2-linux-x64.tar.xz /usr/local/node/
echo 'export NODE_HOME=/usr/local/node' >> /etc/profile
echo 'export PATH=$NODE_HOME/bin:$PATH' >> /etc/profile
source /etc/profile



1.3检查暗转情况,看是否提示两个的版本号信息

node -v ; npm -v



2.安装部署mongodb

cat >  /etc/yum.repos.d/mongodb.repo  << EOF
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
EOF
yum clean all ; yum repolist
yum install -y mongodb-org

# 启动服务
systemctl restart mongod
systemctl enable mongod



配置数据库,使用命令mongo进行操作

use admin
#创建dba用户
db.createUser(
   {
        user: "dba",
        pwd: "DbaPassword",
        roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
   }
)

#创建yapi数据库
use yapi

# 给yapi数据库添加test1用户(yapi默认的账号密码),权限为读写
db.createUser(
     {
          user: "test1",
          pwd: "test1",
          roles: [
             { role: "readWrite", db: "yapi" }  
          ]
     }
)



3.安装git

yum install -y git

# 检查是否安装成功
git --version



部署yapi



4.1创建工作目录

makdir yapi ; cd yapi



4.2下载github中的yapi文件(在工作目录下)

git clone https://github.com/YMFE/yapi.git vendors



4.3修改配置信息(具体的邮件部署和ldap登录部署就不详细讲解了),配置文件是/ yapi工作目录/vendors/config_example.json

{
  "port": "3000",
  "adminAccount": "admin@admin.com",    # 管理员账号
  "db": {
    "servername": "127.0.0.1",    # mongodb服务器的主机名
    "DATABASE": "yapi",        # 数据库中yapi数据存放的数据库名
    "port": 27017,            # 数据库的连接节点信息
    "user": "test",            # 连接数据库的用户信息
    "pass": "test",            # 连接数据库的密码
    "authSource": ""
  }
}



4.4拷贝配置文件至指定位置,并安装(在工作目录下)

# 这个操作很关键,必须在工作目录下执行,不然一定失败
cp vendors/config_example.json config.json
cd vendors/ ; npm install --production --registry https://registry.npm.taobao.org



4.5运行启动服务(在供应商目录下)

npm run install-server 
npm install -S pm2 && npx pm2 start ./server/app.js



*。


然后就可以前往3000端口进行使用了




在搭建过程中,可能出现各种各样的问题,我把我遇到的分享出来



1.出现提示:代码ELIFECYCLE



故障猜测:安装意外中断导致有破损文件



解决方案:删除所有历史安装内容,再重新用安装

rm -rf node_modules
rm -f package-lock.json
npm cache clear --force



2.出现提示:stack错误:EACCES:权限被拒绝,mkdir’/root/yapi/vendors/node_modules/dtrace-provider/.node-gyp’



故障猜测:yapi权限不足,不能进入指定目录





解决方案:





1。在npm install命令后面加上–unsafe-perm = true –allow-root





2.看错误信息,直接手动mkdir -p创建





3。


在一个所有用户都能进入的目录下常见一个目录


,并且这个目录任何用户可以进入



3.出现提示:peerinvalid Peer mongoose-simpledb@4.0.3想要





mongoose@~3.8.18故障猜测:依赖未能解决





解决方案:把需要的包加到Package.json的依赖关系键值内



4.安装后我曾出现登录进去报告java运行中某个类不存在,我考虑到这个可能是是我下载的包有问题,所以我删除了yapi工作目录,重新装了一遍就好了



版权声明:本文为Yu1543376365原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。