yapi的部署

7 篇文章 0 订阅
2 篇文章 1 订阅

部署yapi

安装node

nvm,nrm 的安装

安装MongoDB

mongoDB

使用yapi-cli安装yapi
npm i -g yapi-cli
yapi server

启动可视化部署程序。

本地的话输入 0.0.0.0:9090即可访问部署页面。如果不是本地,把0.0.0.0替换成安装yapi-cli 的机器的ip地址即可。注意9090端口是否被防火墙阻挡。

根据页面提示部署即可。

部署完成后启动yapi

找到部署文件夹。执行

node vendors/server/app.js

浏览器打开 http://127.0.0.1:3000 就可以访问搭建的YAPI(如果不是本地服务器,需要把127.0.0.1替换指定的域名或IP)

注意端口3000是否开放

使用pm2守护node进程

要保持node进程,需要使用pm2。

npm i -g pm2

启动yapi

pm2 start server/app.js

重启

pm2 restart service/app.js

停止:

pm2 stop app_name|app_id

查看应用列表,可以获取到 应用的名字和进程id
pm2 list
关于pm2

升级yapi
cd  {项目目录}
yapi ls         //查看版本号列表
yapi update                 //更新到最新版本
yapi update -v {Version} //更新到指定版本

使用docker部署yapi

docker文档

创建自定义网路
docker network create yapi
安装MongoDB
# 1. 备份 mongoDB 到宿主机,需要使用下面命令创建存储卷
docker volume create mongo-data
# 2.  拉取镜像,国内服务器提供商网络问题,可能会拉取多次才能成功
docker pull mongo:latest
# 3. 启动 MongoDB
# 启动 MongoDB,其中 -e 指定 MONGO_INITDB_ROOT_USERNAME 为 MongoDB 的 ROOT 用户名,MONGO_INITDB_ROOT_PASSWORD 为 MongoDB 的 ROOT 用户密码
docker run -d \
  --name mongodb \
  --restart always \
  --net=yapi \
  -p 27017:27017 \
  -v mongo-data:/data/db \
  -e MONGO_INITDB_DATABASE=yapi \
  -e MONGO_INITDB_ROOT_USERNAME=yapipro \
  -e MONGO_INITDB_ROOT_PASSWORD=yapipro1024 \
  mongo
# 4、查看 MongoDB 容器的启动情况
docker ps -a
# 5、 进入 MongoDB 容器,从第 4 步查看 MongoDB 容器可以获取到容器 id,以下示例使用 2c46d9f59874 代表 MongoDB 的容器 id 
 docker exec -it 2c46d9f59874 /bin/sh
# 6、进入 MongoDB 容器后,进入 mongo cli
mongo localhost:27017

YAPI
使用 Yapi-cli 安装yapi时的问题。

  1. node 版本问题,
    要确定 node 的版本 node (7.6+)同时版本不要太高,最好小于等于node14
  2. yapi.demo.qunar.com 的问题
    开始安装后会报如下错误
(node:19096) Warning: Accessing non-existent property 'which' of module exports inside circular dependency
连接数据库成功!
开始下载平台文件压缩包...
http://yapi.demo.qunar.com/publicapi/archive/v1.4.1
Error:  getaddrinfo ENOTFOUND yapi.demo.qunar.com

这是因为yapi.demo.qunar.com 已经无法访问,所以这部分会报错。

找到本地全局安装的yapi-cli 然后,然后搜索 yapi.demo.qunar.com

// src\commands\server.js 文件中的这部分 直接注释掉即可。
  // if(config.company){
  //   try{
  //     axios.post('http://yapi.demo.qunar.com/publicapi/statis', {company: config.company}).then(res=>{});
  //   }catch(e){}
  // }
  if(fileExist(path.resolve(root, 'init.lock'))){
    throw new Error('系统已安装,如需重新安装,请清空数据库和删除init.lock文件');
  }

第二个在 src\utils.js中,分析这段代码可知这部分是为了获取ypai的下载地址,如果我们要安装的版本刚好是这些老的版本,就会去http://yapi.demo.qunar.com下载,而http://yapi.demo.qunar.com无法访问。所以无法继续,我们可以选择安装不在这个列表中的版本,或者将http://yapi.demo.qunar.com地址换成另外两个可用的地址即可。

......

function oldVersion(){
  return [
    "1.4.1",
    "1.3.23",
    "1.3.22",
    "1.3.21",
    "1.3.20",
    "1.3.19",
    "1.3.18",
    "1.3.17",
    "1.3.16",
    "1.3.14",
    "1.3.12",
    "1.3.11",
    "1.3.9",
    "1.3.8",
    "1.3.7",
    "1.3.6",
    "1.3.5",
    "1.3.4",
    "1.3.3",
    "1.3.1",
    "1.2.9",
    "1.2.8",
    "1.2.7",
    "1.2.5",
    "1.2.4",
    "1.2.3",
    "1.2.0",
    "1.1.2",
    "1.1.1",
    "1.1.0"
  ]
}
function github(version, type = 'npm') {
  let url;
  if(version[0] === 'v' || version[0] === 'V'){
    version = version.substr(1)
  }

  if(oldVersion().indexOf(version) !== -1){
    type = 'qunar'
  }

  if(type === 'github'){
    version = 'v' + version;
    url = 'https://github.com/YMFE/yapi/archive/' + version + '.zip'
  }else if(type === 'npm'){
    url = `http://registry.npm.taobao.org/yapi-vendor/download/yapi-vendor-${version}.tgz`
  }else {
    version = 'v' + version;
    url = 'http://yapi.demo.qunar.com/publicapi/archive/' + version;
  }
  return url
}
......
感谢您的提问,以下是Yapi接口文档和部署笔记: ## Yapi接口文档 Yapi是一个开源的、高效的、易用的接口管理平台,可以帮助团队更好地协作开发、测试和部署。它提供了丰富的接口管理、文档生成和Mock数据等功能,可以大大提升团队的开发效率和项目质量。 Yapi支持多种类型的接口,包括RESTful API、GraphQL API、RPC API等,可以满足不同的业务需求。同时,Yapi还支持多人协作、权限管理、版本控制等功能,可以让团队更加高效地进行接口开发和测试。 在使用Yapi时,您可以通过创建项目、添加接口、编写文档、生成Mock数据等方式来管理接口。Yapi还提供了丰富的插件和扩展,可以让您更加灵活地使用和定制Yapi。 ## Yapi部署笔记 Yapi部署比较简单,您只需要按照以下步骤即可完成: 1. 安装Node.js和MongoDB Yapi是基于Node.js和MongoDB开发的,因此您需要先安装它们。您可以到官网下载Node.js和MongoDB的安装包,并按照官方文档进行安装。 2. 下载Yapi源码 您可以从Yapi的官方Github仓库中下载源码: ``` git clone https://github.com/YMFE/yapi.git vendors/yapi ``` 3. 安装依赖 进入Yapi的源码目录,执行以下命令安装依赖: ``` cd vendors/yapi npm install --production ``` 4. 配置Yapi 在Yapi的源码目录中,有一个`config.json`文件,它包含了Yapi的各种配置信息,您可以根据自己的需求进行修改。其中,重要的配置项包括: ``` { "port": "3000", // Yapi服务的端口号 "adminAccount": { // 管理员账号信息 "username": "admin", "password": "ymfe.org" }, "db": { // MongoDB的配置信息 "servername": "127.0.0.1", "port": 27017, "DATABASE": "yapi" } } ``` 5. 启动Yapi 在Yapi的源码目录中,执行以下命令启动Yapi: ``` node server/app.js ``` 然后,您就可以在浏览器中访问`http://localhost:3000`来使用Yapi了。 以上就是Yapi的简单部署笔记,希望对您有所帮助。如果您想了解更多关于Yapi的内容,可以参考官方文档:https://hellosean1025.github.io/yapi/。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值