乐趣区

关于javascript:ubuntu下安装YApi

前言

    因为最近换了新公司,前后端对接中没有没有应用任何接口文档零碎,间接都是丢个 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/mongodb
sudo 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
#是否认证,后续会改成 true
auth = 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/bin
    ln -s /usr/local/nodejs/bin/npm /usr/local/bin
  • 查看是否装置胜利

    node -v
    npm -v

  • 装置 pm2 与 n 进行治理

    npm install -g pm2
    npm install -g n
  • 增加软链接

    ln -s /usr/local/nodejs/bin/pm2 /usr/local/bin
    ln -s /usr/local/nodejs/bin/n /usr/local/bin
  • 查看是否装置胜利

    n -V
    pm2 -v
  • 装置胜利

装置 node 的时候不要装置版本太高,因为后续装置 yapi 时候 node 版本太高导致报错了,因而装置 10.x 左右的版本就行。

启动 mongodb

启动 mongodb,进入 usr/local/mongodb/bin 执行以下命令,–fork 指的是在后盾运行,能够先不加,等前面都配置好了再进行启动即可。

./mongod -f mongodb.conf --fork
  • 配置明码登陆

执行 mongo 命令进去 shell,执行以下命令创立一个管理员用户

1、use admin
2、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 yapi
    2、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 公布

退出移动版