AgileConfig:分布式配置中心
github:GitHub - dotnetcore/AgileConfig: 基于.NET Core开发的轻量级分布式配置中心 / .NET Core lightweight configuration server
下载部署包:Releases · dotnetcore/AgileConfig · GitHub
版本:
Window11
AgileConfig 1.9
解压缩目录结构:
修改 appsettings.json:
修改adminConsole节点为true
修改db.provider 为 mysql --修改数据库类型
修改db.conn 为 "Host=127.0.0.1;Database=agileconfig;Username=root;Password=123456" --修改数据库连接串
修改JwtSetting.SecurityKey 为 dfasf343453fsdfa,./,./sdfasf34r3hfhfdb
{"urls": "http://*:5000","Logging": {"LogLevel": {"Default": "Information","System": "Warning","Microsoft": "Warning"}},"alwaysTrustSsl": true, // If true, the server will ignore SSL errors."serviceHealthCheckInterval": 15, // 服务健康检测的间隔时间,单位:秒"serviceUnhealthInterval": 60, // 判断服务不健康的间隔,超出这个时间没响应过则认为不健康,默认60,单位:秒"removeServiceInterval": 0, // 如果一个服务超出这个时间没有响应,则直接移除这个服务,单位:秒;如果设定为 <= 0,则不会移除,默认 0 。"pathBase": "", //使用反向代理的时候,或许需要修改这个值 /xxx 必须/开头"adminConsole": true,"cluster": false, // 集群模式:服务启动后自动加入节点列表,服务启动的时候会获取容器的ip,端口默认5000,适合 docker compose 环境使用"preview_mode": false,"db": {"provider": "mysql", //sqlite,mysql,sqlserver,npgsql,oracle,mongodb"conn": "Host=127.0.0.1;Database=agileconfig;Username=root;Password=123456","env": {"TEST": {"provider": "", //sqlite,mysql,sqlserver,npgsql,oracle"conn": ""},"STAGING": {"provider": "", //sqlite,mysql,sqlserver,npgsql,oracle"conn": ""},"PROD": {"provider": "", //sqlite,mysql,sqlserver,npgsql,oracle"conn": ""}}},"JwtSetting": {"SecurityKey": "dfasf343453fsdfa,./,./sdfasf34r3hfhfdb", // 密钥 可以直接在这里配置 jwt 的密钥,或者通过环境变量 JwtSetting:SecurityKey 配置,如果不配置,则系统在启动的时候自动生成一个 key,存在数据库里,如 dfasf343453fsdfa,./,./sdfasf34r3hfhfdb"Issuer": "agileconfig.admin", // 颁发者"Audience": "agileconfig.admin", // 接收者"ExpireSeconds": 86400 // 过期时间},"SSO": {"enabled": false, // 是否启用 SSO"loginButtonText": "", // 自定义 SSO 跳转按钮的文字"OIDC": {"clientId": "", // 应用程序ID"clientSecret": "", // 应用程序密钥"redirectUri": "", //OIDC Server 授权成功后的回调地址 "tokenEndpoint": "", // Token Endpoint, code换取token的地址"tokenEndpointAuthMethod": "client_secret_post", //获取token的接口的认证方案:client_secret_post, client_secret_basic, none. default=client_secret_post."authorizationEndpoint": "", // OIDC Server 授权地址"userIdClaim": "sub", // id token 中用户ID的 Claim key"userNameClaim": "name", // id token 用户名的Claim key"scope": "openid profile" // 请求的scope}}
}
dotnet运行:
dotnet AgileConfig.Server.Apisite.dll
http://localhost:5000/ --打开UI
设置初始化账号密码登录即可
IIS部署问题:
删除 hostingModel="InProcess" ,再重启iis