前言
本小节我们学习一下使用Docker部署YAPI。
YAPI
YApi 是由去哪儿移动架构组推出的一款开源项目,是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。
官网:https://yapi.ymfe.org/,Yapi具有以下功能特性:
- 权限管理
扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性。 - 可视化接口管理
基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率。 - Mock Server
易用的 Mock Server,MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据。 - 自动化测试(这个我比较关注)
完善的接口自动化测试,保证数据的正确性,支持对 Response 断言。 - 数据导入
接口支持导入 swagger, postman, har 数据格式,方便迁移旧项目。 - 插件机制
强大的插件机制,满足各类业务需求。
案例
-
安装Docker(略)
-
从仓库中拉取Yapi镜像,docker pull命令
docker pull silsuer/yapi
-
运行镜像
docker run --name yapi -dit -p 27017:27017 -p 9090:9090 -p 3000:3000 silsuer/yapi bash
使用镜像实例并运行容器,–name是指定容器名,-dit是指后台运行容器,并返回容器id(或者-it,指在当前窗口以伪终端进入容器,这里如果只用-d,容器启动后就会马上停止),-p是指端口映射(主机端口:容器端口,27017是数据库端口,9090是yapi初始化配置端口,3000是yapi实际运行端口)
-
进入容器
[root@iZwz92qakfc7zvdr9h0gipZ yapi]# docker attach yapi root@efd41c325e16:/# root@efd41c325e16:/# ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
docker exec -it yapi /bin/bash
-
容器中部署安装Yapi
-
启动MogoDB,Yapi部署需要数据库依赖
root@efd41c325e16:/# service mongodb start * Starting database mongodb
-
先升级git源
apt-get update
root@efd41c325e16:/# apt-get update Ign:1 http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 InRelease Get:2 http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 Release [3457 B] Get:3 http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 Release.gpg [801 B] Get:4 http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4/multiverse amd64 Packages [15.3 kB] Get:5 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB] Get:6 http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4/multiverse arm64 Packages [15.3 kB] Ign:7 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 InRelease Hit:8 http://archive.ubuntu.com/ubuntu xenial InRelease Get:9 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 Release [2495 B] Get:10 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 Release.gpg [801 B] Err:10 https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 Release.gpg
-