committed by
GitHub
79 changed files with 6746 additions and 3726 deletions
@ -1 +1,2 @@ |
|||
title abp-next-admin-vben |
|||
npm run dev |
|||
@ -1,19 +1,12 @@ |
|||
@echo off |
|||
cls |
|||
set stime=8 |
|||
|
|||
start .\migrate-db-cmd.bat LY.MicroService.BackendAdmin.DbMigrator admin --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.AuthServer.DbMigrator auth-server --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.IdentityServer.DbMigrator identityserver4-admin --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.LocalizationManagement.DbMigrator localization --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.Platform.DbMigrator platform --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.RealtimeMessage.DbMigrator messages --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.TaskManagement.DbMigrator task-management --run |
|||
ping -n %stime% 127.1 >nul |
|||
start .\migrate-db-cmd.bat LY.MicroService.WebhooksManagement.DbMigrator webhooks-management --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.BackendAdmin.DbMigrator admin --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.AuthServer.DbMigrator auth-server --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.IdentityServer.DbMigrator identityserver4-admin --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.LocalizationManagement.DbMigrator localization --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.Platform.DbMigrator platform --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.RealtimeMessage.DbMigrator messages --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.TaskManagement.DbMigrator task-management --run |
|||
call .\migrate-db-cmd.bat LY.MicroService.WebhooksManagement.DbMigrator webhooks-management --run |
|||
pause |
|||
@ -0,0 +1,7 @@ |
|||
namespace LINGYUN.Abp.AspNetCore.Mvc.Localization |
|||
{ |
|||
public class GetLanguageWithFilterDto |
|||
{ |
|||
public string Filter { get; set; } |
|||
} |
|||
} |
|||
@ -0,0 +1,7 @@ |
|||
namespace LINGYUN.Abp.AspNetCore.Mvc.Localization |
|||
{ |
|||
public class GetResourceWithFilterDto |
|||
{ |
|||
public string Filter { get; set; } |
|||
} |
|||
} |
|||
@ -0,0 +1,83 @@ |
|||
|
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.IO; |
|||
using System.Linq; |
|||
using System.Text.RegularExpressions; |
|||
using System.Threading; |
|||
using Castle.Core.Logging; |
|||
using Microsoft.AspNetCore.Hosting; |
|||
using Microsoft.Extensions.Configuration; |
|||
using Microsoft.Extensions.Configuration.Memory; |
|||
using Newtonsoft.Json; |
|||
using Ocelot.Configuration.File; |
|||
using Serilog; |
|||
using Serilog.Core; |
|||
|
|||
namespace Ocelot.DependencyInjection |
|||
{ |
|||
public static class ConfigurationBuilderExtensions |
|||
{ |
|||
public static IConfigurationBuilder AddAutoOcelotConfig(this IConfigurationBuilder builder, IWebHostEnvironment env) |
|||
{ |
|||
return builder.AddAutoOcelotConfig(".", env); |
|||
} |
|||
|
|||
static object locker = new object(); |
|||
|
|||
public static IConfigurationBuilder AddAutoOcelotConfig(this IConfigurationBuilder builder, string folder, IWebHostEnvironment env) |
|||
{ |
|||
WriteFile(folder, env); |
|||
Action<object, FileSystemEventArgs> fileChanged = (sender, e) => |
|||
{ |
|||
lock (locker) |
|||
{ |
|||
Log.Debug("Ocelot config regenerate..."); |
|||
Thread.Sleep(100); //解决vs文件保存时多次触发change事件时引起异常
|
|||
WriteFile(folder, env); |
|||
} |
|||
}; |
|||
|
|||
FileSystemWatcher watcher = new FileSystemWatcher("OcelotConfig", "*.json"); |
|||
watcher.Changed += new FileSystemEventHandler(fileChanged); |
|||
watcher.Deleted += new FileSystemEventHandler(fileChanged); |
|||
watcher.Created += new FileSystemEventHandler(fileChanged); |
|||
watcher.Renamed += new RenamedEventHandler(fileChanged); |
|||
watcher.EnableRaisingEvents = true; |
|||
|
|||
builder.AddJsonFile("ocelot.json", optional: true, reloadOnChange: true); |
|||
return builder; |
|||
} |
|||
|
|||
private static void WriteFile(string folder, IWebHostEnvironment env) |
|||
{ |
|||
string excludeConfigName = ((env != null && env.EnvironmentName != null) ? ("ocelot." + env.EnvironmentName + ".json") : string.Empty); |
|||
Regex reg = new Regex("^ocelot\\.(.*?)\\.json$", RegexOptions.IgnoreCase | RegexOptions.Singleline); |
|||
List<FileInfo> list = (from fi in new DirectoryInfo(folder).EnumerateFiles() |
|||
where reg.IsMatch(fi.Name) && fi.Name != excludeConfigName |
|||
select fi).ToList(); |
|||
FileConfiguration fileConfiguration = new FileConfiguration(); |
|||
foreach (FileInfo item in list) |
|||
{ |
|||
if (list.Count <= 1 || !item.Name.Equals("ocelot.json", StringComparison.OrdinalIgnoreCase)) |
|||
{ |
|||
FileConfiguration fileConfiguration2 = JsonConvert.DeserializeObject<FileConfiguration>(File.ReadAllText(item.FullName)); |
|||
if (fileConfiguration2 == null) |
|||
{ |
|||
Log.Fatal($"Ocelot config file \"{item.FullName}\" is empty"); |
|||
} |
|||
if (item.Name.Equals("ocelot.global.json", StringComparison.OrdinalIgnoreCase)) |
|||
{ |
|||
fileConfiguration.GlobalConfiguration = fileConfiguration2.GlobalConfiguration; |
|||
} |
|||
|
|||
fileConfiguration.Aggregates.AddRange(fileConfiguration2.Aggregates); |
|||
fileConfiguration.Routes.AddRange(fileConfiguration2.Routes); |
|||
} |
|||
} |
|||
|
|||
string contents = JsonConvert.SerializeObject(fileConfiguration, Formatting.Indented); |
|||
File.WriteAllText("ocelot.json", contents); |
|||
} |
|||
} |
|||
} |
|||
@ -1,67 +1,62 @@ |
|||
{ |
|||
"Aggregates": [ |
|||
// ��̬�����ۺ� |
|||
{ |
|||
"RouteKeys": [ |
|||
"platform-api-definition", |
|||
"backend-admin-api-definition", |
|||
"messages-api-definition", |
|||
"ids-admin-api-definition", |
|||
"localization-api-definition", |
|||
"task-api-definition", |
|||
"webhook-api-definition" |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/api-definition", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
// ������þۺ� |
|||
{ |
|||
"RouteKeys": [ |
|||
"platform-configuration", |
|||
"backend-admin-configuration", |
|||
"messages-configuration", |
|||
"ids-admin-configuration", |
|||
"localization-configuration", |
|||
"task-configuration" |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/application-configuration", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
// ȫ������ |
|||
{ |
|||
"RouteKeys": [ |
|||
"setting-global", |
|||
"wechat-setting-global", |
|||
"aliyun-setting-global", |
|||
"oss-management-setting-global" |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/settings/by-global", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
// �⻧���� |
|||
{ |
|||
"RouteKeys": [ |
|||
"setting-current-tenant", |
|||
"wechat-setting-current-tenant", |
|||
"aliyun-setting-current-tenant", |
|||
"oss-management-setting-current-tenant" |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/settings/by-current-tenant", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
// �û����� |
|||
{ |
|||
"RouteKeys": [ |
|||
"assignables-notifilers", |
|||
"my-subscribes" |
|||
], |
|||
"UpstreamPathTemplate": "/api/my-subscribes/assignables-notifilers", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Aggregates": [ |
|||
{ |
|||
"RouteKeys": [ |
|||
"platform-api-definition", |
|||
"backend-admin-api-definition", |
|||
"messages-api-definition", |
|||
"ids-admin-api-definition", |
|||
"localization-api-definition", |
|||
"task-api-definition", |
|||
"webhook-api-definition" |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/api-definition", |
|||
"Aggregator": "AbpResponseMergeAggregator" |
|||
}, |
|||
{ |
|||
"RouteKeys": [ |
|||
"platform-configuration", |
|||
"backend-admin-configuration", |
|||
"messages-configuration", |
|||
"ids-admin-configuration", |
|||
"localization-configuration", |
|||
"task-configuration" |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/application-configuration", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"RouteKeys": [ |
|||
"setting-global", |
|||
"wechat-setting-global", |
|||
"tencent-cloud-setting-global", |
|||
"aliyun-setting-global", |
|||
"oss-management-setting-global" |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/settings/by-global", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"RouteKeys": [ |
|||
"setting-current-tenant", |
|||
"wechat-setting-current-tenant", |
|||
"tencent-cloud-setting-current-tenant", |
|||
"aliyun-setting-current-tenant", |
|||
"oss-management-setting-current-tenant" |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/settings/by-current-tenant", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"RouteKeys": [ |
|||
"setting-current-user" |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/settings/by-current-user", |
|||
"Aggregator": "AbpResponseMergeAggregator", |
|||
"Priority": 99 |
|||
} |
|||
] |
|||
} |
|||
File diff suppressed because it is too large
@ -1,24 +1,24 @@ |
|||
{ |
|||
"GlobalConfiguration": { |
|||
"BaseUrl": "http://localhost:30000", |
|||
"DownstreamScheme": "HTTP", |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"RateLimitOptions": { |
|||
"DisableRateLimitHeaders": false, |
|||
"ClientIdHeader": "ClientId", |
|||
"RateLimitCounterPrefix": "ocelot", |
|||
"QuotaExceededMessage": "您的操作过快,请稍后再试!", |
|||
"HttpStatusCode": 429 |
|||
}, |
|||
"QoSOptions": { |
|||
"TimeoutValue": 30000, |
|||
"DurationOfBreak": 60000, |
|||
"ExceptionsAllowedBeforeBreaking": 30 |
|||
}, |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
} |
|||
} |
|||
} |
|||
{ |
|||
"GlobalConfiguration": { |
|||
"BaseUrl": "http://localhost:30000", |
|||
"DownstreamScheme": "HTTP", |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"RateLimitOptions": { |
|||
"DisableRateLimitHeaders": false, |
|||
"ClientIdHeader": "ClientId", |
|||
"RateLimitCounterPrefix": "ocelot", |
|||
"QuotaExceededMessage": "您的操作过快,请稍后再试!", |
|||
"HttpStatusCode": 429 |
|||
}, |
|||
"QoSOptions": { |
|||
"TimeoutValue": 30000, |
|||
"DurationOfBreak": 60000, |
|||
"ExceptionsAllowedBeforeBreaking": 30 |
|||
}, |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
} |
|||
} |
|||
} |
|||
@ -1,180 +1,255 @@ |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/ids-admin/application-configuration", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "ids-admin-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/ids-admin/api-definition", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "ids-admin-api-definition" |
|||
}, |
|||
// 身份标识管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/identity/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/identity/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 身份认证服务器管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/identity-server/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/identity-server/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 用户账户管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/account/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/account/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// API 文档 |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/ids-admin/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/ids-admin/application-configuration", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "ids-admin-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/ids-admin/api-definition", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "ids-admin-api-definition" |
|||
}, |
|||
// 身份标识管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/identity/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/identity/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 身份认证服务器管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/identity-server/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/identity-server/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 用户账户管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/account/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/account/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 外部认证 |
|||
{ |
|||
"DownstreamPathTemplate": "/.well-known/openid-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 44385 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/.well-known/openid-configuration", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/connect/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 44385 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/connect/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// API 文档 |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30015 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/ids-admin/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
@ -1,118 +1,129 @@ |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/localization/application-configuration", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "localization-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/localization/api-definition", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "localization-api-definition" |
|||
}, |
|||
// 本地化管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/localization/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/localization/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// API 文档 |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/localization/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/localization/application-configuration", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "localization-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/localization/api-definition", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "localization-api-definition" |
|||
}, |
|||
// 本地化管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/localization/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/localization/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// API 文档 |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30030 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/localization/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
@ -1,423 +1,291 @@ |
|||
{ |
|||
"Routes": [ |
|||
// ��ܶ˵� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/messages/application-configuration", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "messages-configuration" |
|||
}, |
|||
// ��ܶ�̬API�˵� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/messages/api-definition", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "messages-api-definition" |
|||
}, |
|||
// ��ʱͨѶ |
|||
{ |
|||
"DownstreamPathTemplate": "/api/im/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/im/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// Hangfire �DZ��� |
|||
{ |
|||
"DownstreamPathTemplate": "/hangfire/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/hangfire/{everything}", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/my-subscribes", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/my-subscribes", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Priority": 99 |
|||
}, |
|||
// �û����� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/my-subscribes/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/my-subscribes/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// �û������б� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/my-subscribes/all", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/my-subscribes/all", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Priority": 99, |
|||
"Key": "my-subscribes" |
|||
}, |
|||
// �û�����֪ͨ |
|||
{ |
|||
"DownstreamPathTemplate": "/api/notifications/my-notifilers/assignables", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/notifications/my-notifilers/assignables", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Priority": 99, |
|||
"Key": "assignables-notifilers" |
|||
}, |
|||
// �û�֪ͨ |
|||
{ |
|||
"DownstreamPathTemplate": "/api/notifications/my-notifilers", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/notifications/my-notifilers", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/notifications/my-notifilers/{id}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/notifications/my-notifilers/{id}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// API �ĵ� |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/messages/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// ������ |
|||
{ |
|||
"DownstreamPathTemplate": "/signalr-hubs/messages", |
|||
"DownstreamScheme": "ws", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/signalr-hubs/messages", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE", "OPTIONS" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": {}, |
|||
"DangerousAcceptAnyServerCertificateValidator": true, |
|||
"RouteIsCaseSensitive": false, |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/signalr-hubs/notifications", |
|||
"DownstreamScheme": "ws", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/signalr-hubs/notifications", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE", "OPTIONS" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": {}, |
|||
"DangerousAcceptAnyServerCertificateValidator": true, |
|||
"RouteIsCaseSensitive": false, |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/signalr-hubs/{everything}", |
|||
"DownstreamScheme": "ws", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/signalr-hubs/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE", "OPTIONS" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": {}, |
|||
"DangerousAcceptAnyServerCertificateValidator": true, |
|||
"RouteIsCaseSensitive": false |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/messages/application-configuration", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "messages-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/messages/api-definition", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "messages-api-definition" |
|||
}, |
|||
// 即时通讯 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/im/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/im/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// Hangfire定时任务 |
|||
{ |
|||
"DownstreamPathTemplate": "/hangfire/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/hangfire/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 消息通知 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/notifications/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/notifications/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// Api文档 |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/messages/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// signalr实时通知 |
|||
{ |
|||
"DownstreamPathTemplate": "/signalr-hubs/messages", |
|||
"DownstreamScheme": "ws", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/signalr-hubs/messages", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE", |
|||
"OPTIONS" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": {}, |
|||
"DangerousAcceptAnyServerCertificateValidator": true, |
|||
"RouteIsCaseSensitive": false, |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/signalr-hubs/notifications", |
|||
"DownstreamScheme": "ws", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/signalr-hubs/notifications", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE", |
|||
"OPTIONS" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": {}, |
|||
"DangerousAcceptAnyServerCertificateValidator": true, |
|||
"RouteIsCaseSensitive": false, |
|||
"Priority": 99 |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/signalr-hubs/{everything}", |
|||
"DownstreamScheme": "ws", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30020 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/signalr-hubs/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE", |
|||
"OPTIONS" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": {}, |
|||
"DangerousAcceptAnyServerCertificateValidator": true, |
|||
"RouteIsCaseSensitive": false |
|||
} |
|||
] |
|||
} |
|||
@ -1,314 +1,303 @@ |
|||
{ |
|||
"Routes": [ |
|||
// ��ܶ˵� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/platform/application-configuration", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "platform-configuration" |
|||
}, |
|||
// ��ܶ�̬API�˵� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/platform/api-definition", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "platform-api-definition" |
|||
}, |
|||
// ����洢 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/oss-management/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/oss-management/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// ƽ̨���� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/platform/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/platform/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// ����� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/files/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/files/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/files/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/api/files/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/task-management/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/task-management/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// ����洢�⻧���� |
|||
{ |
|||
"DownstreamPathTemplate": "/api/setting-management/oss-management/by-current-tenant", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/oss-management/by-current-tenant", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "oss-management-setting-current-tenant" |
|||
}, |
|||
// ����洢ȫ������ |
|||
{ |
|||
"DownstreamPathTemplate": "/api/setting-management/oss-management/by-global", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/oss-management/by-global", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "oss-management-setting-global" |
|||
}, |
|||
// API �ĵ� |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/platform/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/platform/application-configuration", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "platform-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/platform/api-definition", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "platform-api-definition" |
|||
}, |
|||
// oss存储 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/oss-management/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/oss-management/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 平台管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/platform/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/platform/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// 文件管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/files/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/files/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/files/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/api/files/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
}, |
|||
// oss管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/setting-management/oss-management/by-current-tenant", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/oss-management/by-current-tenant", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "oss-management-setting-current-tenant" |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/setting-management/oss-management/by-global", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/setting-management/oss-management/by-global", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "oss-management-setting-global" |
|||
}, |
|||
// Api文档 |
|||
{ |
|||
"DownstreamPathTemplate": "/swagger/v1/swagger.json", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30025 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/platform/v1/swagger.json", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
@ -1,87 +1,96 @@ |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/task/application-configuration", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "task-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/task/api-definition", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "task-api-definition" |
|||
}, |
|||
// 任务管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/task-management/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/task-management/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Routes": [ |
|||
// 框架端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/application-configuration", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/task/application-configuration", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "task-configuration" |
|||
}, |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/task/api-definition", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "task-api-definition" |
|||
}, |
|||
// 任务管理 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/task-management/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30040 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/task-management/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 100 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
@ -1,59 +1,62 @@ |
|||
{ |
|||
"Routes": [ |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30045 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/webhook/api-definition", |
|||
"UpstreamHttpMethod": [ "GET" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "webhook-api-definition" |
|||
}, |
|||
{ |
|||
"DownstreamPathTemplate": "/api/webhooks/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30045 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/webhooks/{everything}", |
|||
"UpstreamHttpMethod": [ "GET", "POST", "PUT", "DELETE" ], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": { |
|||
"ClientWhitelist": [], |
|||
"EnableRateLimiting": true, |
|||
"Period": "1s", |
|||
"PeriodTimespan": 1, |
|||
"Limit": 5 |
|||
}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
{ |
|||
"Routes": [ |
|||
// 框架动态API端点 |
|||
{ |
|||
"DownstreamPathTemplate": "/api/abp/api-definition", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30045 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/abp/webhook/api-definition", |
|||
"UpstreamHttpMethod": [ |
|||
"GET" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 10000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
}, |
|||
"Key": "webhook-api-definition" |
|||
}, |
|||
// webhooks |
|||
{ |
|||
"DownstreamPathTemplate": "/api/webhooks/{everything}", |
|||
"DownstreamScheme": "http", |
|||
"DownstreamHostAndPorts": [ |
|||
{ |
|||
"Host": "127.0.0.1", |
|||
"Port": 30045 |
|||
} |
|||
], |
|||
"UpstreamPathTemplate": "/api/webhooks/{everything}", |
|||
"UpstreamHttpMethod": [ |
|||
"GET", |
|||
"POST", |
|||
"PUT", |
|||
"DELETE" |
|||
], |
|||
"LoadBalancerOptions": { |
|||
"Type": "RoundRobin" |
|||
}, |
|||
"RateLimitOptions": {}, |
|||
"QoSOptions": { |
|||
"ExceptionsAllowedBeforeBreaking": 10, |
|||
"DurationOfBreak": 1000, |
|||
"TimeoutValue": 30000 |
|||
}, |
|||
"HttpHandlerOptions": { |
|||
"UseTracing": true |
|||
} |
|||
} |
|||
] |
|||
} |
|||
File diff suppressed because it is too large
File diff suppressed because it is too large
@ -0,0 +1,26 @@ |
|||
docker network create --subnet=172.18.0.0/16 nt |
|||
|
|||
docker pull mysql |
|||
docker volume rm mysql-data |
|||
docker volume rm mysql-log |
|||
docker volume create mysql-data |
|||
docker volume create mysql-log |
|||
docker run --ip 172.18.0.10 -d --name mysql --net nt -v mysql-log:/var/log/mysql -v mysql-data:/var/lib/mysql -p 3306:3306 -p 33060:33060 -e MYSQL_ROOT_PASSWORD=123456 -d mysql --init-connect="SET collation_connection=utf8mb4_0900_ai_ci" --init-connect="SET NAMES utf8mb4" --skip-character-set-client-handshake |
|||
|
|||
docker pull rabbitmq:management |
|||
docker volume rm rabbitmq-home |
|||
docker volume create rabbitmq-home |
|||
docker run --ip 172.18.0.40 -d -id --name=rabbitmq --net nt -v rabbitmq-home:/var/lib/rabbitmq -p 15672:15672 -p 5672:5672 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:management |
|||
|
|||
docker pull redis |
|||
docker volume rm redis-home |
|||
docker volume create redis-home |
|||
docker run --ip 172.18.0.50 -d --net nt -p 6379:6379 --name redis -v redis-home:/data redis |
|||
|
|||
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.9.0 |
|||
docker volume rm elasticsearch-home |
|||
docker volume create elasticsearch-home |
|||
docker run --ip 172.18.0.60 -d --name es --net nt -v elasticsearch-home:/usr/share/elasticsearch/data -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1G -Xmx1G" -e xpack.security.enabled=false -p 9200:9200 -p 9300:9300 -it docker.elastic.co/elasticsearch/elasticsearch:8.9.0 |
|||
|
|||
docker pull docker.elastic.co/kibana/kibana:8.9.0 |
|||
docker run --ip 172.18.0.70 -d --name kib --net nt -p 5601:5601 docker.elastic.co/kibana/kibana:8.9.0 |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cd ..\aspnet-core |
|||
migrate-database.bat |
|||
|
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.IdentityServer identityserver --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.IdentityServer.HttpApi.Host identityserver4-admin --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.LocalizationManagement.HttpApi.Host localization --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.PlatformManagement.HttpApi.Host platform --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.RealtimeMessage.HttpApi.Host messages --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.TaskManagement.HttpApi.Host task-management --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.WebhooksManagement.HttpApi.Host webhooks-management--watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.WorkflowManagement.HttpApi.Host workflow-management --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-http-api-host.bat LY.MicroService.BackendAdmin.HttpApi.Host admin --watchrun |
|||
@ -0,0 +1,4 @@ |
|||
@echo off |
|||
cls |
|||
cd ..\aspnet-core\ |
|||
.\start-internal-gateway.bat --watchrun |
|||
@ -0,0 +1,9 @@ |
|||
@echo off |
|||
cls |
|||
title start-all |
|||
set stime=12 |
|||
for /f "delims=" %%i in ('dir *.bat /b') do ( |
|||
echo %%i |
|||
start %%i |
|||
ping -n %stime% 127.1 >nul |
|||
) |
|||
@ -0,0 +1,6 @@ |
|||
@echo off |
|||
cls |
|||
cd ../apps/vue/ |
|||
title install-module |
|||
pnpm install |
|||
pause |
|||
@ -0,0 +1,5 @@ |
|||
@echo off |
|||
cls |
|||
cd ../apps/vue/ |
|||
title abp-next-admin-ui |
|||
pnpm run dev |
|||
@ -0,0 +1,8 @@ |
|||
快速启动后端项目: |
|||
1.使用 00.auto-config-docker.cmd 自动配置docker环境 |
|||
2.使用 01.migrate-db.cmd 迁移数据库 |
|||
3.使用 80.start-host.cmd 启动后端项目 |
|||
注:请按自己电脑运行速度调整 80.start-host.cmd 文件中的 stime 参数。 |
|||
快速启动前端项目: |
|||
1.使用 91.install-node-module.cmd 安装npm依赖 |
|||
2.使用 99.start-all.cmd 启动项目 |
|||
Loading…
Reference in new issue