YApi 本地部署

3,561 阅读3分钟

这是我参与更文挑战的第1天,活动详情查看: 更文挑战

一、介绍

YApi 旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API。这是来自官网的描述。更多的详细介绍请看一位博主的一篇文章,我觉得写的非常好。

juejin.cn/post/684490…

二、准备工作

在部署 YApi 之前,本地服务器必须安装 Node.js,MongoDB, Git 。

Node.js(7.6+) 安装参考:www.runoob.com/nodejs/node…

MongoDB(2.6+) 安装参考:blog.csdn.net/weixin_4146…

Git 安装参考:www.cnblogs.com/xueweisuoyo…

YApi 示例站点: yapi.baidu.com/

YApi 文档地址: hellosean1025.github.io/yapi/

YApi github 地址: github.com/YMFE/yapi

安装完软件记得将软件运行的 .exe 文件路径 添加到环境变量 path 里。

三、部署YApi

首先下载 YAPI github地址的仓库源码。

1.可视化部署

把下载的文件解压后(尽量不要解压到中文路径),命令行界面到 YAPI 的解压目录下执行

npm install -g yapi-cli --registry https://registry.npm.taobao.org
 
yapi server

访问 http://localhost:9090 进行个人设置

  切换到部署目录,输入

node yapi-master/my-yapi/vendors/server/app.js

一定要注意路径  

 

访问 http://localhost:3000 ,使用账号名:"admin@admin.com",密码:"ymfe.org"

如果有自己的ip直接把localhost 换上对应的ip就可以外网访问

2.Node.js 部署

切换到根目录输入如下命令 
 
npm install -g yapi-cli --registry https://registry.npm.taobao.org
 
启动yapi服务
 
yapi server

根据输出提示用浏览器访问 http://127.0.0.1:9090 进行部署YApi

输入如上信息后,点击"开始部署"(部署的时候 MongoDB 的 cmd 窗口不要关闭),部署成功后注意最后3段话,根据这3段话操作就好(这是命令行的,部署界面也是类似的)

image.png

image.png

部署成功后会在C盘根目录生成一个名为 my-yapi 的目录。回到命令窗口进入 C:\my-yapi 目录,然后输入上图提示命令

node vendors/server/app.js

输入命令后根据输出信息用浏览器访问 http://127.0.0.1:3000, 访问后进入 YAPI 的登录界面

在使用yapi期间不能关闭 YAPI 的服务命令窗口,否则不能运行

四、使用pm2 进行服务管理

如果使用node vendors/server/app.js启动 YApi 服务的话,如果我们把cmd窗口关闭了,这时候我们就无法访问 YApi 了,这时候我们就可以使用 pm2 管理 node 服务器 启动/停止

1. 安装pm2

npm i -g pm2

2. pm2 管理 YAPI 服务,进入YAPI 的部署目录执行

pm2 start "vendors/server/app.js" --name yapi

如下图所示,则表示成功:

image.png 这时候我们就可以使用pm2来管理 YApi了

pm2操作Yapi基本命令:

    pm2 info yapi //查看服务信息
    pm2 start yapi //停止服务
    pm2 stop yapi //停止服务
    pm2 restart yapi //重启服务

五、遇到的问题

1. node 版本太高, 建议切换到 12.14 版本

 Error: (node:84852) Warning: Accessing non-existent property ‘count’ of module exports inside circular dependency
(Use node --trace-warnings ... to show where the warning was created)

切换到12.14有两种方法,第一就是卸载原来的 node 版本,第二就是使用 nvm node版本管理工具,多安装一个 12.14 版本的 node.
nvm 下载和使用地址: www.jianshu.com/p/cbf4f76ba…

2. 切换版本之后,再次点击 部署,发现报错

image.png

切换到yapi 根目录下找到 my-yapi目录,找到里边的 init.lock 删除就行,然后继续重新部署。

3.UnhandledPromiseRejectionWarning: Error: 初始化管理员账号 "admin@admin.com"

修改默认管理员邮箱即可。

4.其他问题

可查看 github 仓库的 issue : github.com/ymfe/yapi/i…