前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux系统下基于Docker安装Yapi,并且迁移Yapi数据

Linux系统下基于Docker安装Yapi,并且迁移Yapi数据

原创
作者头像
星哥玩云
发布2023-02-15 15:13:30
1.2K0
发布2023-02-15 15:13:30
举报
文章被收录于专栏:开源部署开源部署

本文主要讲四个部分:

1.什么是Yapi

2.Centos7 下基于docker安装Yapi

3.Yapi数据迁移

4.利用Nginx反向代理

什么是Yapi

YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。

image-20230208145718401
image-20230208145718401

1.权限管理

YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求

2.可视化接口管理

基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率

3.Mock Server

易用的 Mock Server,再也不用担心 mock 数据的生成了

4.自动化测试

完善的接口自动化测试,保证数据的正确性

5.数据导入

支持导入 swagger, postman, har 数据格式,方便迁移旧项目

6.插件机制

强大的插件机制,满足各类业务需求

官方文档

http://yapi.smart-xwork.cn/

Git仓库: https://github.com/YMFE/yapi

Centos7 下基于docker安装Yapi

一、安装Docker

已安装的可忽略

代码语言:javascript
复制
yum install  docker
systemctl start docker
systemctl enable docker

二、docker启动配置Mongo

代码语言:javascript
复制
# mkdir -p /data/docker/mongo
# cd  /data/docker/mongo
# mkdir db
# vim mongo.conf
填写一下内容,保存:
systemLog:
  destination: file
  path: /var/log/mongodb/mongod.log
  logAppend: true
storage:
  dbPath: /data/db
net:
  port: 27017
  bindIp: 0.0.0.0

docker启动mongo

代码语言:javascript
复制
# docker run -itd \
-p 27017:27017 \
--name yapi-mongodb \
--restart always \
-v /data/docker/mongo/db:/data/db \
-v /data/docker/mongo/mongo.conf:/data/mongo.conf \
-e TZ=Asia/Shanghai mongo:4.0.4

三、初始化 Yapi 数据库索引及管理员账号

代码语言:javascript
复制
# docker run -it --rm  \
--link yapi-mongodb:mongo  \
--entrypoint npm  \
--workdir /api/vendors  registry.cn-hangzhou.aliyuncs.com/anoy/yapi  run install-server
​
> yapi-vendor@1.8.5 install-server /api/vendors
>  node server/install.js
log: mongodb load success...
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"

四、启动 Yapi 服务

代码语言:javascript
复制
# docker run -d  --name yapi  \
 --restart always \
--link yapi-mongodb:mongo  \
--workdir /api/vendors  \
-p 3000:3000  registry.cn-hangzhou.aliyuncs.com/anoy/yapi  server/app.js

访问 http://localhost:3000

代码语言:javascript
复制
登录账号: admin@admin.com
密码: ymfe.org
image-20230208152434166
image-20230208152434166

至此,Yapi基于docker环境安装完成,就可以使用了

还需要把旧的服务器数据迁移到这个yapi中。

将旧的Yapi项目导入到新的Yapi中

由于旧的服务器快到期了,需要将旧的Yapi的数据导入到新的Yapi中。

登录旧的服务器

1.查看mongodb数据库

代码语言:javascript
复制
# mongo
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB
yapi    0.015GB
> exit
bye
​

2.导出mongodb数据库

导出语法

代码语言:javascript
复制
# mongodump -h dbhost -d dbname -o dbdirectory
-h MongoDB所在服务器地址,例如本机就是127.0.0.1,还可以指定端口号,如:127.0.0.1:27017
-d 需要备份导出的数据库实例名称
-o 备份导出数据存放的地址。
​
例如:
mongodump -h 127.0.0.1:27017 -d yapi -o /root/

实际操作,进入到docker中,导出导入数据库。

新的和旧的服务器要可以联通。否则还是打包文件来操作。

代码语言:javascript
复制
进入docker环境中:
# docker exec -it yapi-mongodb /bin/bash
​
将远程的mongodb导入到新的yapi中。
mongodump -h 192.168.1.21:27017 -d yapi -o yapi192.168.1.21/

3.导入mongodb数据库

导入语法:

代码语言:javascript
复制
​
# mongorestore -h <hostname><:port> -d dbname <path>
path    需要导入的数据所在的位置

实际操作

代码语言:javascript
复制
如下所示:
​
# mongorestore -h 127.0.0.1:27017 -d yapi yapi192.168.1.21/yapi
​

4.验证

数据是否都导入正确。

从原来的接口数为0现在有3000多,至此迁移成功。

image-20230214193557949
image-20230214193557949

Nginx反向代理

这步操作主要是用域名便于记忆,不用记 192.168.1.3:3000 的IP来访问。

代码语言:javascript
复制
server {
        listen       80;
        server_name  yapi.XXX.com;
        #root /path/;
        access_log /data/wwwroot/log/yapi.XXX.com-access.log;
        error_log off;
​
        location / {
                index index.php index.html;
                proxy_pass      http://192.168.1.3:3000;
                proxy_redirect off;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
​
        }
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本文主要讲四个部分:
    • 什么是Yapi
      • 1.权限管理
      • 2.可视化接口管理
      • 3.Mock Server
      • 4.自动化测试
      • 5.数据导入
      • 6.插件机制
    • 官方文档
    • Centos7 下基于docker安装Yapi
      • 一、安装Docker
        • 二、docker启动配置Mongo
          • 三、初始化 Yapi 数据库索引及管理员账号
            • 四、启动 Yapi 服务
            • 将旧的Yapi项目导入到新的Yapi中
              • 1.查看mongodb数据库
                • 2.导出mongodb数据库
                  • 导出语法
                • 3.导入mongodb数据库
                  • 导入语法:
                • 4.验证
                • Nginx反向代理
                相关产品与服务
                容器镜像服务
                容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档