Sign inSign up

zhufuyi/yapi

By zhufuyi

Updated almost 3 years ago

基于 https://github.com/fjc0k/YApi-X 版本的私有部署镜像。

Image
0

10K+

zhufuyi/yapi repository overview

YApi-X

YApi-X 基于 YApi v1.8.8 开发,相较原版,有以下改动:

  • 接口路径支持更多字符,可以将 @#; 等字符用于接口路径定义;
  • 支持复制分类;
  • 新增 adminPassword 配置项以设置管理员密码;
  • 项目图标支持自传图片;
  • 接口运行支持上传文件(需安装插件);
  • 请求参数设置下的 Headers 支持批量添加;
  • 支持 webdav 扩展的 HTTP 请求方法 PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK(了解更多 →);
  • 支持为路径参数、查询参数设置类型。

通过 Docker Compose 安装

docker-compose.yml 文件内容如下:

version: '3'

services:
  yapi-web:
    image: zhufuyi/yapi:latest
    container_name: yapi-web
    restart: always
    ports:
      - 3000:3000
    environment:
      - [email protected]
      - YAPI_ADMIN_PASSWORD=admin
      - YAPI_CLOSE_REGISTER=true
      - YAPI_DB_SERVERNAME=yapi-mongo
      - YAPI_DB_PORT=27017
      - YAPI_DB_DATABASE=yapi
      - YAPI_MAIL_ENABLE=false
      - YAPI_LDAP_LOGIN_ENABLE=false
      - YAPI_PLUGINS=[]
    depends_on:
      - yapi-mongo
    links:
      - yapi-mongo

  yapi-mongo:
    image: mongo:4.4.6
    container_name: yapi-mongo
    restart: always
    volumes:
      - ./data/db:/data/db
    expose:
      - 27017:27017

启动yapi服务:

docker-compose up -d

浏览器访问 http://localhost:3000,默认账号:[email protected],密码:admin


环境变量进行配置
基础配置
环境变量名称类型说明示例
YAPI_ADMIN_ACCOUNTstring管理员账号(邮箱)[email protected]
YAPI_ADMIN_PASSWORDstring管理员密码admin
YAPI_CLOSE_REGISTERboolean是否关闭注册true

数据库配置
环境变量名称类型说明示例
YAPI_DB_SERVERNAMEstringMongoDB 服务地址yapi-mongo
YAPI_DB_PORTnumberMongoDB 服务端口27017
YAPI_DB_DATABASEstring使用的 MongoDB 数据库yapi
YAPI_DB_USERstring登录 MongoDB 服务的用户名root
YAPI_DB_PASSstring登录 MongoDB 服务的用户密码root
YAPI_DB_AUTH_SOURCEstringMongoDB 身份认证所用库admin
YAPI_DB_CONNECT_STRINGstring使用 MongoDB 集群时配置mongodb://127.0.0.100:8418,127.0.0.101:8418/yapidb?slaveOk=true
YAPI_DB_OPTIONSjsonMongoose 连接 MongoDB 服务时的额外选项,一般不用设置。请参考: Mongoose.prototype.connect(){}

邮件配置
环境变量名称类型说明示例
YAPI_MAIL_ENABLEboolean是否启用true
YAPI_MAIL_HOSTstring邮件服务地址smtp.163.com
YAPI_MAIL_PORTnumber邮件服务端口465
YAPI_MAIL_FROMstring发送人邮箱[email protected]
YAPI_MAIL_AUTH_USERstring登录邮件服务的用户名[email protected]
YAPI_MAIL_AUTH_PASSstring登录邮件服务的用户密码foobar
YAPI_MAIL_OPTIONSjson传递给 Nodemailer 的额外选项,一般不用设置。请参考:Nodemailer > SMTP transport{"tls":{"rejectUnauthorized":false}}

LDAP 登录配置
环境变量名称类型说明示例
YAPI_LDAP_LOGIN_ENABLEboolean是否启用true
YAPI_LDAP_LOGIN_SERVERstringLDAP 服务地址ldap://ldap.foo.bar
YAPI_LDAP_LOGIN_BASE_DNstring登录 LDAP 服务的用户名cn=admin,dc=foo,dc=bar
YAPI_LDAP_LOGIN_BIND_PASSWORDstring登录 LDAP 服务的用户密码foobar
YAPI_LDAP_LOGIN_SEARCH_DNstring查询用户数据的路径ou=users,dc=foo,dc=bar
YAPI_LDAP_LOGIN_SEARCH_STANDARDstring支持两种值:
1、前端登录账号对应的查询字段,如:mailuid 等;
2、自定义查询条件,其中 %s 会被前端登录账号替换,如:&(objectClass=user)(cn=%s)
-
YAPI_LDAP_LOGIN_EMAIL_POSTFIXstring登录邮箱后缀@163.com
YAPI_LDAP_LOGIN_EMAIL_KEYstringLDAP 数据库存储用户邮箱的字段mail
YAPI_LDAP_LOGIN_USERNAME_KEYstringLDAP 数据库存储用户名的字段name

插件配置
环境变量名称类型说明示例
YAPI_PLUGINSjson要使用的插件列表。点击查看开源 YApi 插件列表 →
配置项数据格式:
{
    "name": "插件名称",
    "options": "插件配置"
}
注意:
安装插件会运行 YApi 自带的打包命令,其内存消耗较大,因此,在安装插件时,物理机可用内存最好大于 1GB,否则,易出现内存溢出错误,导致插件安装失败。
[{"name":"add-user"},{"name":"gitlab","options":{}}]

Tag summary

Content type

Image

Digest

sha256:2c579be74

Size

107.5 MB

Last updated

almost 3 years ago

docker pull zhufuyi/yapi