diff --git a/Common.props b/Common.props index a518bd035f5d58f90bca8e9aa3ed0d03d157143d..b15a115ab8012229510d19a97fd8289c53481f79 100644 --- a/Common.props +++ b/Common.props @@ -4,7 +4,7 @@ net8.0 enable enable - NU1803;NU1507;1701;1702;1591;8002;CS1573; + $(NoWarn);NU1803;NU1507;1701;1702;1591;8002;CS1573; diff --git a/Directory.Packages.props b/Directory.Packages.props index ebc6a02e0b94883d7f75b4969e5d7ab98ab95f67..46c9520e8bbfe1ae782bc51abb579e3c537a2ed7 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -18,7 +18,7 @@ - + @@ -26,6 +26,8 @@ + + @@ -82,7 +84,7 @@ - + diff --git a/NuGet.Config b/NuGet.Config new file mode 100644 index 0000000000000000000000000000000000000000..c4cf7bd6df8050ebc65ae91305b38284c81c8155 --- /dev/null +++ b/NuGet.Config @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/build/DaprTool.Solution.AppHost/DaprTool.Solution.AppHost.csproj b/build/DaprTool.Solution.AppHost/DaprTool.Solution.AppHost.csproj index 7c3c97f4a8e882672d1357081744e7093529bf04..73f9d48ead0d9938df96d0d5abe1f6e14ac087cb 100644 --- a/build/DaprTool.Solution.AppHost/DaprTool.Solution.AppHost.csproj +++ b/build/DaprTool.Solution.AppHost/DaprTool.Solution.AppHost.csproj @@ -13,7 +13,7 @@ - + diff --git a/build/DaprTool.Solution.AppHost/aspirate-output.zip b/build/DaprTool.Solution.AppHost/aspirate-output.zip deleted file mode 100644 index 849721a8cd28e48a00b73880df4bd88b153bb0e9..0000000000000000000000000000000000000000 Binary files a/build/DaprTool.Solution.AppHost/aspirate-output.zip and /dev/null differ diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/admin/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/admin/deployment.yaml index 57477e8cfd8878bf9f5b9b00f441623e14b9dedb..1a45619380fdb5250492d00c09264fb381ecfa09 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/admin/deployment.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/admin/deployment.yaml @@ -30,7 +30,7 @@ spec: spec: containers: - name: admin - image: registry.cn-shenzhen.aliyuncs.com/huangshen/web-admin:latest + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/web-admin:1.0.5-alpha1 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/admin/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/admin/kustomization.yaml index a99abeffd03e2b620e50f3d5711b4040a66216b8..5933d6551a91ac66ab8bb479881f37e82c16b9c0 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/admin/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/admin/kustomization.yaml @@ -12,5 +12,7 @@ configMapGenerator: - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES=true - OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=in_memory - ASPNETCORE_FORWARDEDHEADERS_ENABLED=true + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=admin - ASPNETCORE_URLS=http://+:8080; diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/deployment.yaml index 4984a37e46706fd4f455f61e20c81341d190f075..7d058376bb49576b54100380c0d0c765581a632f 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/deployment.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/deployment.yaml @@ -30,7 +30,7 @@ spec: spec: containers: - name: auth-admin - image: registry.cn-shenzhen.aliyuncs.com/huangshen/auth-admin:latest + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/auth-admin:1.0.5-alpha1 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/kustomization.yaml index 9d2b2b3c80b005bf31098b6ba709b566ed231427..2a22d1243af55f0f553b43c8c9c5e75ecb731b01 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/auth-admin/kustomization.yaml @@ -12,5 +12,7 @@ configMapGenerator: - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES=true - OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=in_memory - ASPNETCORE_FORWARDEDHEADERS_ENABLED=true + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=auth-admin - ASPNETCORE_URLS=http://+:8080; diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/deployment.yaml index 669d9fbfcb6795b8b91814b819443dfa579cc97a..aec53fc0bc0ddfd433666de088a271bca5f09db5 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/deployment.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/deployment.yaml @@ -30,7 +30,7 @@ spec: spec: containers: - name: auth-api - image: registry.cn-shenzhen.aliyuncs.com/huangshen/auth-api:latest + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/auth-api:1.0.5-alpha1 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/kustomization.yaml index 90494ca1f632b911442c515efcae02eb0bada5e8..9b6b0fa19fd656ec67fadba0fdcb05686526819e 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/auth-api/kustomization.yaml @@ -12,5 +12,7 @@ configMapGenerator: - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES=true - OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=in_memory - ASPNETCORE_FORWARDEDHEADERS_ENABLED=true + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=auth-api - ASPNETCORE_URLS=http://+:8080; diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/deployment.yaml index dfb66859b95ba1b594d20586b8c78d5ad32a1792..f1c71f8dc45a351abf11c1dd2d51d040e2b16dab 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/deployment.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/deployment.yaml @@ -30,7 +30,7 @@ spec: spec: containers: - name: auth-sts - image: registry.cn-shenzhen.aliyuncs.com/huangshen/auth-sts:latest + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/auth-sts:1.0.5-alpha1 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/kustomization.yaml index 156756d66151af2c89d92be5ee9925b9cfc9b1a3..d8c748b5e24a7ae5b341aaa6cf0657f0f7737c09 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/auth-sts/kustomization.yaml @@ -12,5 +12,7 @@ configMapGenerator: - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES=true - OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=in_memory - ASPNETCORE_FORWARDEDHEADERS_ENABLED=true + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=auth-sts - ASPNETCORE_URLS=http://+:8080; diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/dashboard.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/dashboard.yaml index 604fb1afdd2e47658e6242ef88c5475ceedeba21..78c0a53e5a09ceec58f31043a046234e82f52c2b 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/dashboard.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/dashboard.yaml @@ -17,7 +17,7 @@ spec: terminationGracePeriodSeconds: 30 containers: - name: aspire-dashboard - image: mcr.microsoft.com/dotnet/nightly/aspire-dashboard:8.0.0-preview.7 + image: mcr.microsoft.com/dotnet/aspire-dashboard:8.0 resources: requests: cpu: "500m" @@ -32,18 +32,6 @@ spec: env: - name: DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS value: "true" - livenessProbe: - httpGet: - path: / - port: 18888 - initialDelaySeconds: 30 - periodSeconds: 10 - readinessProbe: - httpGet: - path: / - port: 18888 - initialDelaySeconds: 30 - periodSeconds: 10 --- apiVersion: v1 kind: Service diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/kustomization.yaml index e6aa18e83e21c3e681f41227ba432d75ef6a3bf0..3f3ba56e70b1f441696c222e2332f06ed5f0ad40 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/kustomization.yaml @@ -6,6 +6,7 @@ resources: - auth-admin - auth-api - order-api +- proxy-monitor - proxy-server - namespace.yaml - dashboard.yaml diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/order-api/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/order-api/deployment.yaml index d5ea0db5de6ccc00dba4c414c58978538428db84..69db7c15eb63ee02580daf3d965f368e9fc7936f 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/order-api/deployment.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/order-api/deployment.yaml @@ -30,7 +30,7 @@ spec: spec: containers: - name: order-api - image: registry.cn-shenzhen.aliyuncs.com/huangshen/order-api:latest + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/order-api:1.0.5-alpha1 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/order-api/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/order-api/kustomization.yaml index 457dcf8507fe396f1e7a5f26675ac9a434632e8f..0af82122bb160c463d6ab9d1efb5e99140cfa156 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/order-api/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/order-api/kustomization.yaml @@ -12,5 +12,7 @@ configMapGenerator: - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES=true - OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=in_memory - ASPNETCORE_FORWARDEDHEADERS_ENABLED=true + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=order-api - ASPNETCORE_URLS=http://+:8080; diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/deployment.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7cb9ad3f3b4786965f05c98a3eb613a4e8841a7b --- /dev/null +++ b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/deployment.yaml @@ -0,0 +1,31 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: proxy-monitor + labels: + app: proxy-monitor +spec: + minReadySeconds: 60 + replicas: 1 + selector: + matchLabels: + app: proxy-monitor + strategy: + type: Recreate + template: + metadata: + labels: + app: proxy-monitor + spec: + containers: + - name: proxy-monitor + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/proxy-monitor:1.0.5-alpha1 + imagePullPolicy: IfNotPresent + ports: + - containerPort: 8080 + - containerPort: 8443 + envFrom: + - configMapRef: + name: proxy-monitor-env + terminationGracePeriodSeconds: 180 \ No newline at end of file diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/kustomization.yaml new file mode 100644 index 0000000000000000000000000000000000000000..7eda7cf57723b6cac02c122146bea559905e70ae --- /dev/null +++ b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/kustomization.yaml @@ -0,0 +1,18 @@ +resources: +- deployment.yaml +- service.yaml + +generatorOptions: + disableNameSuffixHash: true + +configMapGenerator: +- name: proxy-monitor-env + literals: + - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EXCEPTION_LOG_ATTRIBUTES=true + - OTEL_DOTNET_EXPERIMENTAL_OTLP_EMIT_EVENT_LOG_ATTRIBUTES=true + - OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=in_memory + - ASPNETCORE_FORWARDEDHEADERS_ENABLED=true + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=proxy-monitor + - ASPNETCORE_URLS=http://+:8080; + diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/service.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/service.yaml new file mode 100644 index 0000000000000000000000000000000000000000..b98f60eb4a7a13e3b8c35a914a167866bdd67aea --- /dev/null +++ b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-monitor/service.yaml @@ -0,0 +1,16 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: proxy-monitor +spec: + type: ClusterIP + selector: + app: proxy-monitor + ports: + - name: http + port: 44430 + targetPort: 8080 + - name: https + port: 8443 + targetPort: 8443 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/deployment.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/deployment.yaml index c7822b50f39d48984f2d6ba5603298eaf25ef0dd..df0a426188b518507ac46039eb799f3c5c1a9a8a 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/deployment.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/deployment.yaml @@ -20,7 +20,7 @@ spec: spec: containers: - name: proxy-server - image: registry.cn-shenzhen.aliyuncs.com/huangshen/proxy-server:latest + image: registry.cn-shenzhen.aliyuncs.com/project-workspace/proxy-server:1.0.5-alpha1 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 diff --git a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/kustomization.yaml b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/kustomization.yaml index a23dcc65f9c43e672de5b785a7434fca8f51cbb5..be372580e4420769891851cddac8fba175ce2983 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/kustomization.yaml +++ b/build/DaprTool.Solution.AppHost/aspirate-output/proxy-server/kustomization.yaml @@ -17,5 +17,7 @@ configMapGenerator: - services__auth-sts__http__0=http://auth-sts:8080 - services__auth-api__http__0=http://auth-api:8080 - services__order-api__http__0=http://order-api:8080 + - OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 + - OTEL_SERVICE_NAME=proxy-server - ASPNETCORE_URLS=http://+:8080; diff --git a/build/DaprTool.Solution.AppHost/aspirate-state.json b/build/DaprTool.Solution.AppHost/aspirate-state.json index 596ccb46c1c5946f7363b8282394d522190e077c..db47f1fda919adcb637e7eba5e70c469266a927c 100644 --- a/build/DaprTool.Solution.AppHost/aspirate-state.json +++ b/build/DaprTool.Solution.AppHost/aspirate-state.json @@ -4,13 +4,16 @@ "namespace": "dapr-playground", "containerRegistry": "registry.cn-shenzhen.aliyuncs.com", "containerImageTags": [ + "1.0.5-alpha1", "latest" ], + "imagePullPolicy": "IfNotPresent", "containerBuilder": "docker", - "containerRepositoryPrefix": "huangshen", + "containerRepositoryPrefix": "project-workspace", "outputFormat": "kustomize", "skipFinalKustomizeGeneration": false, "privateRegistryEmail": "aspir8@aka.ms", + "includeDashboard": true, "useCustomNamespace": true, "secrets": { "salt": "IkrA7nfBQ7D\u002BCckn", diff --git a/build/DaprTool.Solution.AppHost/aspirate.json b/build/DaprTool.Solution.AppHost/aspirate.json index 2a1d7dc4c186b592d74108ec8a3151e64ec3613d..55d43af728feea5659125ec371fa8c687841c692 100644 --- a/build/DaprTool.Solution.AppHost/aspirate.json +++ b/build/DaprTool.Solution.AppHost/aspirate.json @@ -2,7 +2,7 @@ "TemplatePath": null, "ContainerSettings": { "Registry": "registry.cn-shenzhen.aliyuncs.com", - "RepositoryPrefix": "huangshen", + "RepositoryPrefix": "project-workspace", "Tags": [ "latest" ], diff --git a/src/IdentityServer4/src/Idsrv4.Admin.Api/Idsrv4.Admin.Api.csproj b/src/IdentityServer4/src/Idsrv4.Admin.Api/Idsrv4.Admin.Api.csproj index 2efb2f1467df5990dd933221862f036a91c8a652..f2ab51e630800a3dd1dfec05dcf14cf88771bc39 100644 --- a/src/IdentityServer4/src/Idsrv4.Admin.Api/Idsrv4.Admin.Api.csproj +++ b/src/IdentityServer4/src/Idsrv4.Admin.Api/Idsrv4.Admin.Api.csproj @@ -2,6 +2,7 @@ net8.0 1cc472a2-4e4b-48ce-846b-5219f71fc643 + false auth-api registry.cn-shenzhen.aliyuncs.com mcr.microsoft.com/dotnet/aspnet:8.0 diff --git a/src/ProxyServer/Program.cs b/src/ProxyServer/Program.cs index 3f89aa16a7752df5d77e361519e659200afb14e1..08821d9f937e62145b546b11621a6cc7e2cf1a88 100644 --- a/src/ProxyServer/Program.cs +++ b/src/ProxyServer/Program.cs @@ -1,5 +1,16 @@ +using Serilog.Sinks.SystemConsole.Themes; +using Serilog; + var builder = WebApplication.CreateBuilder(args); +using var serilog = new LoggerConfiguration() + .MinimumLevel.Debug() + .Enrich.FromLogContext() + .WriteTo.Console(theme: AnsiConsoleTheme.Code) + .CreateLogger(); +builder.Logging.ClearProviders(); +builder.Logging.AddSerilog(serilog, dispose: false); + builder.AddServiceDefaults(); builder.Services.AddAntiforgery(); @@ -10,7 +21,6 @@ builder.WebHost.ConfigureKestrel(options => options.Limits.MaxResponseBufferSize = 131072; // 增加到 128KB,根据需要调整 }); - // 如果不知道 路由 匹配 match 怎么配置 请参考链接 // https://learn.microsoft.com/zh-cn/aspnet/core/fundamentals/routing?view=aspnetcore-8.0#route-templates builder.Services diff --git a/src/ProxyServer/ProxyServer.csproj b/src/ProxyServer/ProxyServer.csproj index 728219948b4b9f409ede2eb9a67fd97dfc9496aa..6092ccacc667bc23be100bf48d88d51a353adac2 100644 --- a/src/ProxyServer/ProxyServer.csproj +++ b/src/ProxyServer/ProxyServer.csproj @@ -1,4 +1,4 @@ - + proxy-server @@ -7,9 +7,12 @@ - - - + + + + + +