Last updated on 2021年6月3日
官方文档:内网部署 (hellosean1025.github.io),本文章做了离线安装的相关补充。
使用我们提供的 yapi-cli
工具,部署 YApi 平台是非常容易的。建议部署成 http
站点,因 chrome
浏览器安全限制,部署成 https
会导致测试功能在请求 http
站点时文件上传功能异常。
内网部署
如果您是将服务器代理到 nginx
服务器,请配置 nginx
支持 websocket
。
#在location /添加
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
环境要求
- nodejs(7.6+)
- mongodb(2.6+)
安装
方式一. 可视化部署[推荐]
执行 yapi server
启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url
, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org
) 登录系统(默认密码可在个人中心修改)。
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
方式二. 命令行部署
github
下载压缩文件:Releases · YMFE/yapi (github.com)
mkdir -p yapi/vendors
cd yapi
#上传解压后的文件到目录vendors
cp vendors/config_example.json ./config.json //复制完成后请修改相关配置
cd vendors
npm install --production --registry https://registry.npm.taobao.org
#管理员账号名可在 config.json 配置,安装程序会初始化数据库索引和管理员账号
npm run install-server
node server/app.js
#启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候
(通过git
下载,或需要部署到一些特殊的服务器,可尝试如下方法)
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)
这里需要注意的地方:
配置文件
config.json
中的数据库用户名、密码和日志路径都需要已经存在,然后再执行npm run install-server
mogodb 建立数据库、用户并授权(MongoDB createUser – 创建一个数据库新用户)
use yapi_db
db.createUser( { user: "yapi_user", pwd: "yapi_pwd", roles: [ { role: "readWrite", db: "yapi_db" } ] } )
db.auth("yapi_user","yapi_pwd")
安装后的目录结构如下:
|-- config.json
|-- init.lock
|-- log
`-- vendors
|-- CHANGELOG.md
|-- LICENSE
|-- README.md
|-- client
|-- common
|-- config_example.json
|-- doc
|-- exts
|-- nodemon.json
|-- npm-debug.log
|-- package.json
|-- plugin.json
|-- server
|-- static
|-- test
|-- webpack.alias.js
|-- yapi-base-flow.jpg
|-- ydocfile.js
`-- ykit.config.js
服务器管理
推荐使用 pm2 管理 node 服务器启动,停止,具体使用方法可参考下面的教程:
当然也可以使用 supervisor
,配置示例:
[program:yapi-server]
command=/usr/local/bin/node /mnt/yapi/vendors/server/app.js
autorestart=true
autostart=true
startretries=3
priority=1
redirect_stderr=true
stdout_logfile=/var/log/supervisor/yapi.log
写在最后
你也可以使用docker
部署,参加:fjc0k/docker-YApi: 接口管理平台 YApi 的 Docker 镜像。 (github.com) ,可惜我的系统是 Ubuntu14.04
安装docker
总是有问题。