先说一下为什么要使用Docker安装Yapi

  1. 方便管理

  2. yapi安装对nodejs和npm的版本要求,非常容易安装失败(这是主要原因)

拉镜像

docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi

创建挂载目录

mkdir -p /data/yapi/mongodata

运行专用mongo

服务名设为yapimongo

docker run --restart always -v /data/yapi/mongodata:/data/db -d --name yapimongo

运行容器初始化

docker run -it --rm --link yapimongo --entrypoint npm --workdir /api/vendors registry.cn-hangzhou.aliyuncs.com/anoy/yapi run install-server

初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"

运行服务

这里内外端口号都用3000

docker run -d --restart=always --name yapi --link yapimongo --workdir /api/vendors -p 3000:3000 registry.cn-hangzhou.aliyuncs.com/anoy/yapi server/app.js

访问:

这个时候就可以访问并使用管理员账号登陆了

访问链接:http://ip:3000

禁用注册

我们运行完需要禁用注册,因为黑客会通过注册黑进服务器

docker exec -it yapi /bin/sh

vi ../config.json

修改内容如下

{
  "port": "3000",
  "adminAccount": "admin@admin.com",
  "closeRegister":true, #主要是添加这句配置
  "db": {
    "servername": "mongo",
    "DATABASE": "yapi",
    "port": 27017
  }
}

保存后退出:exit

重启服务:docker restart yapi

注册

禁用注册后怎么添加用户呢,登录yapi,然后添加一个项目,增加一个注册用户接口

地址为:http://ip:端口/api/user/reg

POST json

{
  "email": "xx@xxx.com",
  "password": "xxx@xxx.com",
  "username": "xxxx"
}

每次注册完成后,需求退出重新进入