Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/app-host/withdockerfile.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ With Aspire it's possible to specify a _Dockerfile_ to build when the [AppHost](
These two methods serve different purposes:

- **<xref:Aspire.Hosting.ContainerResourceBuilderExtensions.AddDockerfile%2A>**: Creates a new container resource from an existing Dockerfile. Use this when you want to add a custom containerized service to your app model.
- **<xref:Aspire.Hosting.ContainerResourceBuilderExtensions.WithDockerfile%2A>**: Customizes an existing container resource (like a database or cache) to use a different Dockerfile. Use this when you want to modify the default container image for a Aspire component.
- **<xref:Aspire.Hosting.ContainerResourceBuilderExtensions.WithDockerfile%2A>**: Customizes an existing container resource (like a database or cache) to use a different Dockerfile. Use this when you want to modify the default container image for an Aspire component.

Both methods expect an existing Dockerfile in the specified context path—neither method creates a Dockerfile for you.

Expand Down
2 changes: 1 addition & 1 deletion docs/azure/container-app-jobs.md
Original file line number Diff line number Diff line change
Expand Up @@ -188,5 +188,5 @@ builder.AddExecutable("data-script", "python", ".", "process_data.py")

- [Configure Azure Container Apps environments](configure-aca-environments.md).
- [Azure Container Apps Jobs documentation](/azure/container-apps/jobs).
- [Deploy a Aspire project to Azure Container Apps](../deployment/azure/aca-deployment.md).
- [Deploy an Aspire project to Azure Container Apps](../deployment/azure/aca-deployment.md).
- [Customize Azure resources](customize-azure-resources.md).
4 changes: 2 additions & 2 deletions docs/azure/customize-azure-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ uid: dotnet/aspire/integrations/customize-azure-resources

# Customize Azure resources

If you're using Azure to host resources for a Aspire solution, you have granular control over those resources. You can either let Aspire configure them if the default properties suit your needs, or override defaults to control their behavior. Let's examine how you can customize your Azure infrastructure from Aspire code.
If you're using Azure to host resources for an Aspire solution, you have granular control over those resources. You can either let Aspire configure them if the default properties suit your needs, or override defaults to control their behavior. Let's examine how you can customize your Azure infrastructure from Aspire code.

The Azure SDK for .NET provides the [📦 Azure.Provisioning](https://www.nuget.org/packages/Azure.Provisioning) NuGet package and a suite of service-specific [Azure provisioning packages](https://www.nuget.org/packages?q=owner%3A+azure-sdk+description%3A+declarative+resource+provisioning&sortby=relevance). These Azure provisioning libraries make it easy to declaratively specify Azure infrastructure natively in .NET. Their APIs enable you to write object-oriented infrastructure in C#, resulting in Bicep. [Bicep is a domain-specific language (DSL)](/azure/azure-resource-manager/bicep/overview) for deploying Azure resources declaratively.

Expand Down Expand Up @@ -81,7 +81,7 @@ The preceding code:
- Adds a project named `worker` to the builder.
- Chains a call to <xref:Aspire.Hosting.ResourceBuilderExtensions.WithEnvironment*> to set the `ACR_REGISTRY_NAME` environment variable in the project to the value of the `registryName` output.

The functionality demonstrates how to add Azure infrastructure to your AppHost project, even if the Azure service isn't directly exposed as a Aspire integration. It further shows how to flow the output of the Azure Container Registry into the environment of a dependent project.
The functionality demonstrates how to add Azure infrastructure to your AppHost project, even if the Azure service isn't directly exposed as an Aspire integration. It further shows how to flow the output of the Azure Container Registry into the environment of a dependent project.

Consider the resulting Bicep file:

Expand Down
2 changes: 1 addition & 1 deletion docs/azure/integrations-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -334,4 +334,4 @@ To configure the Azure Container App environment, see [Configure Azure Container

When you publish your app, the Azure provisioning generated Bicep is used by the Azure Developer CLI to create the Azure resources in your Azure subscription. Aspire outputs a [publishing manifest](../deployment/manifest-format.md), that's also a vital part of the publishing process. The Azure Developer CLI is a command-line tool that provides a set of commands to manage Azure resources.

For more information on publishing and deployment, see [Deploy a Aspire project to Azure Container Apps using the Azure Developer CLI (in-depth guide)](../deployment/azure/aca-deployment-azd-in-depth.md).
For more information on publishing and deployment, see [Deploy an Aspire project to Azure Container Apps using the Azure Developer CLI (in-depth guide)](../deployment/azure/aca-deployment-azd-in-depth.md).
2 changes: 1 addition & 1 deletion docs/caching/stackexchange-redis-caching-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ ms.date: 02/05/2025

With Aspire, there are several ways to use caching in your applications. One popular option is to use [Stack Exchange Redis](https://stackexchange.github.io/StackExchange.Redis), which is a high-performance data store that can be used to store frequently accessed data. This article provides an overview of Stack Exchange Redis caching and links to resources that help you use it in your applications.

To use multiple Redis caching integrations in your application, see [Tutorial: Implement caching with Aspire integrations](caching-integrations.md). If you're interested in using the Redis Cache for Azure, see [Tutorial: Deploy a Aspire project with a Redis Cache to Azure](caching-integrations-deployment.md).
To use multiple Redis caching integrations in your application, see [Tutorial: Implement caching with Aspire integrations](caching-integrations.md). If you're interested in using the Redis Cache for Azure, see [Tutorial: Deploy an Aspire project with a Redis Cache to Azure](caching-integrations-deployment.md).

## Redis serialization protocol (RESP)

Expand Down
6 changes: 3 additions & 3 deletions docs/community-toolkit/dapr.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: NET Aspire Dapr integration
description: Learn how to use the Aspire Dapr integration, which can configure and orchestrate Dapr from a Aspire AppHost project.
description: Learn how to use the Aspire Dapr integration, which can configure and orchestrate Dapr from an Aspire AppHost project.
ms.date: 05/12/2025
uid: frameworks/dapr
---
Expand Down Expand Up @@ -74,7 +74,7 @@ For more information, see [dotnet add package](/dotnet/core/tools/dotnet-add-pac

Dapr uses the [sidecar pattern](https://docs.dapr.io/concepts/dapr-services/sidecar/). The Dapr sidecar runs alongside your app as a lightweight, portable, and stateless HTTP server that listens for incoming HTTP requests from your app.

To add a sidecar to a Aspire resource, call the `WithDaprSidecar` method on it. The `appId` parameter is the unique identifier for the Dapr application, but it's optional. If you don't provide an `appId`, the parent resource name is used instead.
To add a sidecar to an Aspire resource, call the `WithDaprSidecar` method on it. The `appId` parameter is the unique identifier for the Dapr application, but it's optional. If you don't provide an `appId`, the parent resource name is used instead.

:::code language="csharp" source="snippets/Dapr/Dapr.AppHost/AppHost.cs" range="1-7" highlight="7":::

Expand All @@ -86,7 +86,7 @@ The `WithDaprSidecar` method offers overloads to configure your Dapr sidecar opt

### Complete Dapr AppHost example

Putting everything together, consider the following example of a Aspire AppHost project that includes:
Putting everything together, consider the following example of an Aspire AppHost project that includes:

- A backend API service that declares a Dapr sidecar with defaults.
- A web frontend project that declares a Dapr sidecar with specific options, such as explict ports.
Expand Down
8 changes: 4 additions & 4 deletions docs/database/connect-to-existing-database.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
---
title: Connect a Aspire microservice to an existing database
description: Learn how to configure a Aspire solution with a connection to an existing database that isn't hosted in a Aspire container.
title: Connect an Aspire microservice to an existing database
description: Learn how to configure an Aspire solution with a connection to an existing database that isn't hosted in an Aspire container.
ms.date: 03/13/2025
ms.topic: tutorial
uid: database/connect-to-existing-database
zone_pivot_groups: entity-framework-client-integration
---

# Tutorial: Connect a Aspire microservice to an existing database
# Tutorial: Connect an Aspire microservice to an existing database

Aspire is designed to make it easy and quick to develop cloud-native solutions. It uses containers to host the services, such as databases, that underpin each microservice. However, if you want your microservice to query a database that already exists, you must connect your microservice to it instead of creating a database container whenever you run the solution.

In this tutorial, you create a Aspire solution with an API that connects to an existing database. You'll learn how to:
In this tutorial, you create an Aspire solution with an API that connects to an existing database. You'll learn how to:

> [!div class="checklist"]
>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -574,7 +574,7 @@ In EF Core a context is relatively quick to create and dispose of so most applic

Context pooling is a feature of EF Core. Contexts are created as normal but, when you dispose of one, it isn't destroyed but reset and stored in a pool. The next time your code creates a context, the stored one is returned to avoid the extra overhead of creating a new one.

In a Aspire consuming project, there are three ways to use context pooling:
In an Aspire consuming project, there are three ways to use context pooling:

- Use the Aspire `Add\<DatabaseSystem\>DbContext` methods to create the context. These methods create a context pool automatically.
- Call the EF Core <xref:Microsoft.Extensions.DependencyInjection.EntityFrameworkServiceCollectionExtensions.AddDbContextPool*> method instead of the EF Core <xref:Microsoft.Extensions.DependencyInjection.EntityFrameworkServiceCollectionExtensions.AddDbContext*> method.
Expand Down
6 changes: 3 additions & 3 deletions docs/database/sql-server-integrations.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@ ms.topic: tutorial

# Tutorial: Connect an ASP.NET Core app to SQL Server using Aspire and Entity Framework Core

In this tutorial, you create an ASP.NET Core app that uses a Aspire Entity Framework Core SQL Server integration to connect to SQL Server to read and write support ticket data. [Entity Framework Core](/ef/core/) is a lightweight, extensible, open source object-relational mapper that enables .NET developers to work with databases using .NET objects. You'll learn how to:
In this tutorial, you create an ASP.NET Core app that uses an Aspire Entity Framework Core SQL Server integration to connect to SQL Server to read and write support ticket data. [Entity Framework Core](/ef/core/) is a lightweight, extensible, open source object-relational mapper that enables .NET developers to work with databases using .NET objects. You'll learn how to:

> [!div class="checklist"]
>
> - Create a basic .NET app that is set up to use Aspire integrations
> - Add a Aspire integration to connect to SQL Server
> - Add an Aspire integration to connect to SQL Server
> - Configure and use Aspire Component features to read and write from the database

[!INCLUDE [aspire-prereqs](../includes/aspire-prereqs.md)]
Expand Down Expand Up @@ -167,4 +167,4 @@ Let's examine how the data volume changes the behavior of the solution:

- [Aspire with SQL Database deployment](sql-server-integration-deployment.md)
- [Aspire deployment via Azure Container Apps](../deployment/azure/aca-deployment.md)
- [Deploy a Aspire project using GitHub Actions](../deployment/azure/aca-deployment-github-actions.md)
- [Deploy an Aspire project using GitHub Actions](../deployment/azure/aca-deployment-github-actions.md)
8 changes: 4 additions & 4 deletions docs/deployment/aspire-deploy/aca-deployment-aspire-cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ ms.date: 09/25/2025
ai-usage: ai-assisted
---

# Deploy a Aspire project to Azure Container Apps using Aspire CLI
# Deploy an Aspire project to Azure Container Apps using Aspire CLI

The [`aspire deploy`](../../cli-reference/aspire-deploy.md) CLI command provides a streamlined way to deploy Aspire applications directly to Azure Container Apps. This command automates the entire deployment process, from building container images to provisioning Azure infrastructure and deploying your applications. This article walks you through using the `aspire deploy` command to deploy a Aspire solution to Container Apps. You'll learn how to complete the following tasks:
The [`aspire deploy`](../../cli-reference/aspire-deploy.md) CLI command provides a streamlined way to deploy Aspire applications directly to Azure Container Apps. This command automates the entire deployment process, from building container images to provisioning Azure infrastructure and deploying your applications. This article walks you through using the `aspire deploy` command to deploy an Aspire solution to Container Apps. You'll learn how to complete the following tasks:

> [!div class="checklist"]
>
Expand Down Expand Up @@ -47,9 +47,9 @@ This command opens a web browser for you to sign in with your Azure credentials.
- [Sign in with Azure CLI](/cli/azure/authenticate-azure-cli).
- [The `aspire deploy` command reference](/dotnet/aspire/cli-reference/aspire-deploy).

## Create a Aspire project
## Create an Aspire project

As a starting point, this article assumes you've created a Aspire project from the **Aspire Starter Application** template. For more information, see [Quickstart: Build your first Aspire project](../../get-started/build-your-first-aspire-app.md).
As a starting point, this article assumes you've created an Aspire project from the **Aspire Starter Application** template. For more information, see [Quickstart: Build your first Aspire project](../../get-started/build-your-first-aspire-app.md).

To configure your project for Azure Container Apps deployment, add a package reference to your AppHost project that includes the [`📦Aspire.Hosting.Azure.AppContainers](https://www.nuget.org/packages/Aspire.Hosting.Azure.AppContainers) NuGet package:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ ms.date: 09/23/2025
ms.custom: sfi-image-nochange
---

# Deploy a Aspire project to Azure Container Apps using Visual Studio
# Deploy an Aspire project to Azure Container Apps using Visual Studio

Aspire projects are designed to run in containerized environments. Azure Container Apps is a fully managed environment that enables you to run microservices and containerized applications on a serverless platform. This article will walk you through creating a new Aspire solution and deploying it to Microsoft Azure Container Apps using the Visual Studio. You'll learn how to complete the following tasks:

Expand All @@ -19,9 +19,9 @@ Aspire projects are designed to run in containerized environments. Azure Contain

[!INCLUDE [aspire-prereqs](../../includes/aspire-prereqs.md)]

## Create a Aspire project
## Create an Aspire project

As a starting point, this article assumes that you've created a Aspire project from the **Aspire Starter Application** template. For more information, see [Quickstart: Build your first Aspire project](../../get-started/build-your-first-aspire-app.md).
As a starting point, this article assumes that you've created an Aspire project from the **Aspire Starter Application** template. For more information, see [Quickstart: Build your first Aspire project](../../get-started/build-your-first-aspire-app.md).

### Resource naming

Expand Down
2 changes: 1 addition & 1 deletion docs/deployment/aspire-deploy/application-insights.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ builder.AddProject<Projects.Web>("webfrontend")
builder.Build().Run();
```

Follow the steps in [Deploy a Aspire project to Azure Container Apps using the Azure Developer CLI (in-depth guide)](../azd/aca-deployment-azd-in-depth.md) to deploy the application to Azure Container Apps. `azd` will create an Application Insights resource as part of the same resource group, and configure the connection string for each container.
Follow the steps in [Deploy an Aspire project to Azure Container Apps using the Azure Developer CLI (in-depth guide)](../azd/aca-deployment-azd-in-depth.md) to deploy the application to Azure Container Apps. `azd` will create an Application Insights resource as part of the same resource group, and configure the connection string for each container.

### Manual provisioning of Application Insights resource

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ When you deploy Aspire applications to Azure using the Aspire CLI or Azure Devel

## Default security posture

When you deploy a Aspire application to Azure Container Apps using `azd`, several security measures are automatically configured:
When you deploy an Aspire application to Azure Container Apps using `azd`, several security measures are automatically configured:

### Container-level security

Expand Down Expand Up @@ -111,7 +111,7 @@ For comprehensive guidance on Azure security, see [Azure security best practices

## Next steps

- [Deploy a Aspire project to Azure Container Apps](../azd/aca-deployment.md)
- [Deploy an Aspire project to Azure Container Apps](../azd/aca-deployment.md)
- [Customize Aspire Azure deployments](customize-deployments.md)
- [Aspire Azure Key Vault integration](../../security/azure-security-key-vault-integration.md)
- [User-assigned managed identity](../../azure/user-assigned-managed-identity.md)
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
title: Deploy a Aspire project that connects to Redis Cache to Azure
description: Learn how to deploy a Aspire project that connects to Redis Cache to Azure
title: Deploy an Aspire project that connects to Redis Cache to Azure
description: Learn how to deploy an Aspire project that connects to Redis Cache to Azure
ms.date: 09/30/2025
ms.topic: how-to
---

# Tutorial: Deploy a Aspire project with a Redis Cache to Azure
# Tutorial: Deploy an Aspire project with a Redis Cache to Azure

In this tutorial, you learn to configure a Aspire project with a Redis Cache for deployment to Azure. Aspire provides multiple caching integration configurations that provision different Redis services in Azure. You'll learn how to:
In this tutorial, you learn to configure an Aspire project with a Redis Cache for deployment to Azure. Aspire provides multiple caching integration configurations that provision different Redis services in Azure. You'll learn how to:

> [!div class="checklist"]
>
Expand Down Expand Up @@ -150,4 +150,4 @@ The deployment process created a Redis app container due to the **.AppHost** con

- [Aspire deployment via Azure Container Apps](../azd/aca-deployment.md)
- [Aspire Azure Container Apps deployment deep dive](../azd/aca-deployment-azd-in-depth.md)
- [Deploy a Aspire project using GitHub Actions](../azd/aca-deployment-github-actions.md)
- [Deploy an Aspire project using GitHub Actions](../azd/aca-deployment-github-actions.md)
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
---
title: Deploy a Aspire project with a SQL Server Database to Azure
description: Learn how to deploy a Aspire app with a SQL Server Database that connects to Azure
title: Deploy an Aspire project with a SQL Server Database to Azure
description: Learn how to deploy an Aspire app with a SQL Server Database that connects to Azure
ms.date: 11/08/2024
ms.topic: how-to
---

# Tutorial: Deploy a Aspire project with a SQL Server Database to Azure
# Tutorial: Deploy an Aspire project with a SQL Server Database to Azure

In this tutorial, you learn to configure an ASP.NET Core app with a SQL Server Database for deployment to Azure. Aspire provides multiple SQL Server integration configurations that provision different database services in Azure. You'll learn how to:

Expand Down Expand Up @@ -148,6 +148,6 @@ The deployment process created a SQL Server app container due to the **.AppHost*

## See also

- [Deploy a Aspire project to Azure Container Apps](../azd/aca-deployment.md)
- [Deploy a Aspire project to Azure Container Apps using the Azure Developer CLI (in-depth guide)](../azd/aca-deployment-azd-in-depth.md)
- [Tutorial: Deploy a Aspire project using the Azure Developer CLI](../azd/aca-deployment-github-actions.md)
- [Deploy an Aspire project to Azure Container Apps](../azd/aca-deployment.md)
- [Deploy an Aspire project to Azure Container Apps using the Azure Developer CLI (in-depth guide)](../azd/aca-deployment-azd-in-depth.md)
- [Tutorial: Deploy an Aspire project using the Azure Developer CLI](../azd/aca-deployment-github-actions.md)
Loading
Loading