基于docker的安装yapi
backboard
author
Written by Poilzero(blog:poilzero.sipc115.club)
“一条理工菜狗”
dependence
installation dependence:
how to sync dependence with me you can see in my another blog:
- System OS: ubuntu 20.4 LTS
- python3.x(recommend anaconda which is a muti-version python virtual environment)
- docker
about YAPI
一个可以自定义的给开发者提供API接口调用的开源平台,你可以正向用途,也可以用于测试漏洞。
作者用途为用于熟悉docker,未实际使用,关键指令的所有参数都做了详尽的说明,感谢观看。
installation
创建yapi专用的mongo数据库容器
目录创建
mkdir -p /home/poilzero/opt/mongodata
创建专用mongo容器并配置映射关系
mongo是image名
--volume 是挂载数据卷(类似虚拟硬盘):
真实路径:容器内地址
--restart always是总是随着docker启动而自启动
--name是容器名
-d是以进程模式在后台运行
docker run -d --name mongo-yapi --restart always -v /home/poilzero/opt/mongodata:/data/db mongo
安装yapi
第三方image拉取yapi镜像
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi
初始化 Yapi 数据库索引及管理员账号
run install-server 运行时执行安装数据库索引程序
registry.cn-hangzhou.aliyuncs.com/anoy/yapi 使用的镜像
--workdir
--entrypoint
--link
--rm 运行结束后自动删除本容器(这部操作是先创建一个yapi容器进行数据库初始化操作)
-it 打开terminal并且开始交互模式interactive(接管控制台的stin和stout)
docker run -it --rm --link mongo-yapi:mongo --entrypoint npm --workdir /api/vendors registry.cn-hangzhou.aliyuncs.com/anoy/yapi run install-server
启动 Yapi 服务
server/app.js 运行时执行的shell
registry.cn-hangzhou.aliyuncs.com/anoy/yapi 使用的镜像
-p 端口转发,外部端口:docker内部端口
--workdir
--link
--name 容器名为yapi
-d 创建进程方式运行
docker run -d --name yapi --link mongo-yapi:mongo --workdir /api/vendors -p 3000:3000 registry.cn-hangzhou.aliyuncs.com/anoy/yapi server/app.js