Yapi安装部署
文章目录
环境要求
本地开发环境需安装以下工具及版本:
- 版本控制工具:Git
- 数据库:MongoDB 8.0.9
- 包管理工具:npm 6.14.16
- 运行时环境:Node.js 12.22.12
- 编程语言:Python 3
1.MongoDB安装部署
官网地址:https://www.mongodb.com/try/download/enterprise,如下所示,选择合适的版本。

下载的文件通常为压缩格式(TAR或者TGZ等),解压到本地目录。解压完成后,在目标目录中创建db子目录作为数据存储位置,如图所示。

打开终端,cd 进入bin目录。
cd /Users/***/projects/mongodb8.0.9/bin
执行以下命令启动MongoDB。
sudo ./mongod -dbpath ../db
访问如下链接 http://localhost:27017/ ,如果返回 It looks like you are trying to access MongoDB over HTTP on the native driver port. 则表示MongoDB启动成功。
[!WARNING]
如果不加sudo,会出现以下异常:
aborting after fassert() failure,可能是文件系统权限不足导致。
至此,MongoDB安装部署完成。
2.Yapi安装部署
2.1.安装方式
方式一. 可视化部署[推荐]
首先新建一个yapi目录,执行如下命令安装 yapi 脚手架.
npm install -verbose -g yapi-cli --registry https://registry.npm.taobao.org
执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。
yapi server

大部分人在这一步都会出现错误,基本上都是版本问题,我选择部署版本1.8.8,node版本为v12.22.12,然后还需要安装好python。详细可见2.2.解决方案。如果配置好之后仍然报错,可查看部署路径中是否已经将源码文件都拉下来了,然后进入vendors目录选择命令行方式部署。
方式二. 命令行部署
如果 github 压缩文件无法下载,或需要部署到一些特殊的服务器,可尝试此方法。
mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors //或者下载 zip 包解压到 vendors 目录(clone 整个仓库大概 140+ M,可以通过 `git clone --depth=1 https://github.com/YMFE/yapi.git vendors` 命令减少,大概 10+ M)
cp vendors/config_example.json ./config.json //复制完成后请修改相关配置
cd vendors
npm install --production --registry https://registry.npm.taobao.org
npm run install-server //安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置
node server/app.js //启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候
2.2.解决方案
注意版本兼容问题
Node版本起初选择v18.20.5,进行部署时会出现以下问题,可降低Node版本。
nvm use v12.22.12

node-gyp报错
node-gyp依赖于Python环境来执行编译过程,使用Python脚本来执行某些构建任务。
# 报错内容
npm ERRI gyp verb which failed python2 Error: not found: python2

这个表示系统的 PATH 环境变量中找到 Python 可执行文件,也就是你没有安装 Python 或者 未配置环境变量。在安装好对应版本的Python 之后,配置好环境变量,或者设置npm配置项,如下所示:
# 配置好 python
npm config set python /opt/homebrew/bin/python3
# 进入vendors目录,重新安装依赖
cd vendors
npm install --production --registry https://registry.npm.taobao.org
如果以上配置都完成了,启动时还是有编译报错,如下所示,则可能是 node 版本不兼容(图中使用的v16.20.2),选择一个低版本的试一下 nvm use v12.22.12。
# 报错内容
npm ERR! gyp ERR! build error
npm ERR! gyp ERR! stack Error: "make" failed with exit code: 2
npm ERR! gyp ERR! stack at ChildProcess.onExit (/Users/wzh/projects/yapi/my-yapi/vendors/node_modules/node-gyp/lib/bild.js: 262:23)
npm ERR! gyp ERR! stack at ChildProcess.emit (node:events:513:28)

3.Yapi使用
可见官方文档 https://hellosean1025.github.io/yapi/documents/index.html。

&spm=1001.2101.3001.5002&articleId=148315062&d=1&t=3&u=366be987d7cc41c69d96d6a6f80b31f7)
2697

被折叠的 条评论
为什么被折叠?



