文章目录
why yapi
和swagger能够很好的集成,测试数据维护简单;基本的mock功能、自动测试功能。
mongodb安装
镜像拉取
- 登陆 https://hub.docker.com/,查找
mongo
sudo docker pull mongo:4.0
创建本地文件夹,所有操作在该文件夹下进行
mkdir ~/文档/_04dockervolume/yapi/mongo/data/{configdb,db} -p
运行mongo容器
cd ~/文档/_04dockervolume/yapi/mongo/data/
sudo docker run -d \
-v $(pwd)/configdb/:/data/configdb \
-v $(pwd)/db/:/data/db/ \
-p 27017:27017 \
--name yapi-mongo \
-d mongo:4.0 --auth
配置mongo容器
sudo docker exec -it yapi-mongo /bin/bash
# 在容器内操作
mongo admin
# 在mongo内操作
# 创建用户
db.createUser({
user: 'admin', pwd: '123456', roles: [ {
role: "userAdminAnyDatabase", db: "admin" } ] });
# 设置安全用户
db.auth("admin", "123456")
# 设置普通用户,这点类似linux,有root,但是平时不用root
db.createUser({
user: 'yapi', pwd: '123456', roles: [ {
role: "readWrite", db: "admin" } ] });
# 重新登陆
exit
mongo admin -u yapi -p 123456
常用mongodb指令
之前写的,可以参考下:
常用mongodb指令
yapi安装
使用yapi代码编译镜像
cd ~/文档/_04dockervolume/yapi/
# config.json,配置文件,主要配置mongo的连接
vi config.json
# vi中输入
{
"port": "3000",
"adminAccount": "it_laowu",
"db": {
"servername": "mongo",
"DATABASE": "yapi",
"port": "27017",
"user": "yapi",
"pass": "123456",
"authSource":"admin"
},
"mail": {
"enable": false,
"host": "smtp.163.com",
"port": 465,
"from": "***@163.com",
"auth": {
"user": "***@163.com",
"pass": "*****"
}
}
}
# 官方版本
wget https://github.com/YMFE/yapi/archive/v1.8.0.tar.gz
# Dockerfile
vi Dockerfile
# vi中输入
FROM node:12-alpine as base
RUN apk add --no-cache git python make openssl tar gcc
COPY v1.8.0.tar.gz /home
RUN cd /home && tar zxvf v1.8.0.tar.gz && mkdir /api && mv /home/yapi-1.8.0 /api/vendors
RUN cd /api/vendors && npm install --production --registry https://registry.npm.taobao.org
FROM node:12-alpine
WORKDIR /api/vendors
COPY --from=base /api/vendors /api/vendors
COPY config.json /api/
EXPOSE 3000
ENTRYPOINT ["node"]
# 编译
docker build -t yapi .
启动yapi
docker run -d \
--name yapi \
--link yapi-mongo:mongo \
--workdir /api/vendors \
-p 3000:3000 \
yapi \
server/app.js
登陆yapi
帐号维护在config.json里面,默认帐号[email protected] 密码:ymfe.org
帐号:it_laowu
密码:123456