SuperAPI AI 工具集

dotnet-aspire

部署与运维

查看项目

更新于 10-16 00:04

技能介绍

用途:指导构建、升级和运维 .NET Aspire 应用宿主,涵盖 CLI、AppHost、ServiceDefaults、集成、仪表板、测试与 Azure 部署。触发场景包括 Aspire.AppHost.Sdk、Aspire.Hosting.*、DistributedApplication.CreateBuilder、WithReference、WaitFor、AddProject、AddRedis、AddPostgres、aspire run/init/add/update,以及 Aspire.Hosting.Testing、DistributedApplicationTestingBuilder 等。

主要能力:先分类任务(新建 AppHost、接入现有方案、集成接线、测试与可观测性、部署、版本升级);优先使用当前 Aspire 工具链与 AppHost SDK,而非已弃用的旧工作负载;将 13.1.x 视为服务补丁而非新应用模型,保持 CLI、SDK 与紧密耦合包同一补丁线,aspire update 后重跑校验。AppHost 保持代码优先、面向拓扑,只建模服务、资源、依赖、端点、生命周期与参数,不放业务逻辑;ServiceDefaults 仅限遥测、健康检查、弹性与服务发现。优先官方一方集成,能力确有缺口时才用 CommunityToolkit/Aspire。

使用方式:用 aspire new 建项目、aspire init 为现有方案加支持或建单文件 AppHost、aspire add 加集成、aspire run 本地编排、aspire deploy 部署、aspire update 升级;aspire publish 仍存在但偏预览。用 WithReference 传递依赖与配置,WaitFor 控制启动顺序,仅在确需外部可达端点时用 WithExternalHttpEndpoints。测试用 Aspire.Hosting.Testing 与共享 AppHost fixture,App.CreateHttpClient 创建资源绑定客户端,必要时叠加 WebApplicationFactory。

适用场景与限制:适合多服务与资源的本地开发或云部署编排、服务发现、OpenTelemetry、健康检查、仪表板与端到端测试。仪表板是开发可观测面,不能替代生产监控;本地容器或模拟器不等于生产就绪;旧 8.x/9.x 方案需显式迁移。反模式包括硬编码服务 URL 或连接串、在 AppHost 放业务逻辑、把 ServiceDefaults 当共享模型仓库、到处加外部 HTTP 端点、默认用 CommunityToolkit 而官方已覆盖、把 Aspire 测试当 mock 框架。具体版本、价格与平台支持资料未提供。