在本教程中,你将学习如何配置Aspire项目,并为部署到Azure安装Redis缓存。 Aspire 提供多种缓存集成配置,用于在 Redis 中配置不同的 Azure 服务。 你将了解如何:
- 配置应用以预配 AzureAzure Cache for Redis
- 配置应用以预配容器化 Redis 缓存
注释
本文档专门聚焦于Aspire配置,以便预配和部署Redis缓存资源于Azure。 有关更多信息,以及了解完整 Aspire 部署过程,请参阅 Azure Container Apps 部署 教程。
先决条件
若要使用 Aspire,需要在本地安装以下各项:
-
.NET 8.0 或 .NET 9.0。
- 从 Aspire 9.4 开始,支持 .NET 10 Preview 5 或更高版本。
- 符合 OCI 的容器运行时环境,例如:
- 集成开发人员环境(IDE)或代码编辑器,例如:
- Visual Studio 2022 17.9 或更高版本(可选)
-
Visual Studio Code (可选)
- C# Dev Kit:扩展(可选)
- JetBrains Rider 与 Aspire 插件 (可选)
有关详细信息,请参阅 Aspire 设置和工具以及 Aspire SDK。
创建示例解决方案
按照教程:实现缓存功能并进行Aspire集成以构建示例项目。
配置应用以进行Redis 缓存部署
Aspire提供了两个内置配置选项,以在Redis上简化Azure缓存的部署。
- 使用 Redis 配置容器化 Azure Container Apps 缓存
- Azure Azure Cache for Redis预配实例
将 Aspire 集成添加到应用
将适当的 Aspire 集成添加到 AspireRedis.AppHost 项目,以实现您所需的托管服务。
将 📦Aspire.Hosting.Azure.Redis NuGet 包添加到 AspireRedis.AppHost 项目中:
dotnet add package Aspire.Hosting.Azure.Redis
配置 AppHost 项目
为所需服务配置 Redis 项目。
将 Program.cs 文件的内容替换为以下代码,文件位于 AspireRedis.AppHost 项目中:
var builder = DistributedApplication.CreateBuilder(args);
var cache = builder.AddAzureRedis("cache");
var apiService = builder.AddProject<Projects.AspireRedis_ApiService>("apiservice")
.WithReference(cache);
builder.AddProject<Projects.AspireRedis_Web>("webfrontend")
.WithExternalHttpEndpoints()
.WithReference(cache)
.WaitFor(cache)
.WithReference(apiService)
.WaitFor(apiService);
builder.Build().Run();
上述代码将 AzureAzure Cache for Redis 资源添加到您的应用程序,并配置名为 cache 的连接。 该 AddAzureRedis 方法可确保诸如 Azure Developer CLI 或 Visual Studio 等工具在部署过程中创建 Azure Cache for Redis 资源。
部署应用
该 aspire deploy 命令支持 AspireRedis 集成配置来简化部署。 该命令使用这些设置并预配正确配置的资源。
注释
还可以使用 Azure CLI 或 Bicep 来预配和部署 Aspire 项目资源。 这些选项需要更多的手动步骤,但提供对部署的更精细的控制。 Aspire 项目还可以通过手动配置连接到现有 Redis 实例。
若要将应用部署到 Azure Container Apps,请从 AspireRedis.AppHost 目录运行以下命令:
aspire deploy
首次运行 aspire deploy 命令时,系统会提示你:
- 登录 Azure:按照身份验证提示登录到帐户 Azure 。
- 选择订阅:选择要用于部署的 Azure 订阅。
- 选择或创建资源组:选择现有资源组或创建新资源组。
- 选择一个位置:选择要 Azure 在其中部署资源的区域。
部署过程将预配必要的 Azure 资源并部署应用 Aspire 。 此过程可能需要几分钟才能完成。
部署完成后,命令输出将提供已部署资源的信息,您可以在Azure门户中查看这些信息。
部署过程已预配了一个AzureAzure Cache for Redis资源,因你提供的.AppHost配置。
清理资源
运行以下 Azure CLI 命令,在不再需要创建的 Azure 资源时删除资源组。 删除资源组也会删除其中包含的资源。
az group delete --name <your-resource-group-name>
有关详细信息,请参阅 清理 Azure中的资源。