源码 GitHub
在线演示平台
登录信息
E-Mail: kevinz@weghst.com
Password: 123456


请不要修改演示应用配置, 如需要测试请添加新的应用.
注意: 因为机器网络配置较低, 访问相对较慢


简介

DuiC 是采用 kotlin + spring-boot-2.0 + spring-webflux-5.0 开发的分布式统一配置管理系统, 它的目标是管理所有应用的配置(Any App).

设计目标

  1. 统一配置管理
  2. 标准配置管理规范
  3. 管理所有的配置
  4. 更灵活的配置管理
  5. 为非技术人员使用

功能

配置应用/环境

图片描述

通过应用及环境区分不同的配置, 不同应用的配置互不干扰, 相同应用的配置支持合并获取配置参数.

YAML 配置方式

图片描述

采用 YAML 文件格式管理配置, 同时支持语法高亮及格式校验.
YAML 是专门用来写配置文件的语言, 非常简洁和强大, 远比 JSON 格式方便.

RESTful API 获取配置

Open API 3.0 文档
SwaggerHub 在线文档

/apps/states/{name}/{profile}

$ curl -X GET "https://duic.zhudy.io/api/v1/apps/states/samples/first" -H "accept: application/json"

检查配置的状态, 如果服务器配置发生变动, state 会相应的改变, 客户端可以根据 state 值的变化向服务器拉取最新的配置.

/apps/{name}/{profile}

curl -X GET "https://duic.zhudy.io/api/v1/apps/samples/first" -H "accept: application/json"

获取应用全部配置.

/apps/{name}/{profile}/{key}

curl -X GET "https://duic.zhudy.io/api/v1/apps/samples/first/k1" -H "accept: application/json"

获取某一个 key 的配置.

以上 RESTful 接口中的 profile 参数都可以传入多个, 多个 profile 将会按顺序深度合并所有的配置再返回

访问令牌

图片描述

应用配置可设置访问令牌, 当访问令牌存在时, 获取相关的配置必须带上令牌才可访问

完全兼容 spring-cloud-config

DuiC 提供的 /ssc/{name}/{profile} 接口完全兼容 spring-cloud-config-client.
同时还提供 duic-spring-cloud-config-client 用于 spring-boot 加载配置.
支持 @RefreshScope 热加载配置 Refresh Scope

Docker 部署(推荐)

通过 duic-docker-compose 可一键部署应用, 在 docker-compose.yml 文件中已经集成了 let's encrypt, 服务发现MonoDB.

当然你也可以使用 zhudyos/duic 镜像自行部署.

支持用户权限

DuiC 自带的 admin 系统支持用户应用权限管理, 不同的用户只可管理自身有权限的应用

联系/讨论

QQ 群
540315111 (DuiC 统一配置管理)


行走在赤道
5k 声望132 粉丝