Get started with the Redis integrations
Redis® is the world’s fastest data platform for caching, vector search, and NoSQL databases — a high-performance key/value cache, message queue, and primary data platform used by millions of applications worldwide. The Aspire Redis integration lets you model a Redis server as a first-class resource in your AppHost, then hand the connection information to any consuming app — regardless of language. Valkey and Garnet are drop-in alternatives that speak the same protocol and work with the same client libraries.
Why use Redis with Aspire
Section titled “Why use Redis with Aspire”Adding Redis through Aspire — rather than wiring up containers and connection strings by hand — gives you:
- Zero-config local development. Aspire runs Redis from the
docker.io/library/rediscontainer image with a password generated automatically for you. - Consistent connection info across languages. Once you reference the Redis resource from a consuming app, Aspire injects connection properties as environment variables in a predictable format that works from C#, TypeScript, Python, Go, or any other language.
- Built-in health checks. The hosting integration automatically registers a health check so the dashboard and your orchestrator can tell when Redis is ready.
- Dashboard observability. The Redis resource shows up in the Aspire dashboard with logs, status, and telemetry alongside your other services.
- First-class C# client integration. C# apps use the
Aspire.StackExchange.Redispackage for automatic dependency injection, health checks, and OpenTelemetry tracing — all wired up from the same resource name. - Management UIs. Optionally attach Redis Insight or Redis Commander as sub-resources to get a web-based dashboard for your Redis data.
How the pieces fit together
Section titled “How the pieces fit together”The Redis integration has two sides: a hosting integration that you use in your AppHost to model the Redis resource, and a connection story for consuming apps that reference it.
architecture-beta group apphost(server)[AppHost] group consumer(server)[Consuming app] service hosting(server)[Hosting integration] in apphost service redis(server)[Redis server] in apphost service client(iconoir:server-connection)[Client integration] in consumer service app(server)[App] in consumer hosting:R --> L:redis redis:R --> L:client client:R --> L:app
The hosting integration lives in your AppHost project and models the Redis server as a resource. The client integration lives in each consuming app and uses the connection information Aspire injects to talk to Redis.
Getting there is a two-step process: model the Redis resource in your AppHost, then connect to it from each app that needs it.
-
Model Redis in your AppHost
Section titled “Model Redis in your AppHost”Add the Redis hosting integration to your AppHost, then declare a Redis resource and reference it from the apps that need it. The Redis Hosting integration article walks through every capability — data volumes, data bind mounts, persistence snapshots, Redis Insight, Redis Commander, and custom parameters — with side-by-side C# and TypeScript examples.
Set up Redis in the AppHost
-
Connect from your consuming app
Section titled “Connect from your consuming app”When you reference a Redis resource from a consuming app, Aspire injects its connection information as environment variables. See Connect to Redis for the connection properties reference and per-language examples for C#, Go, Python, and TypeScript — including the full C# client integration built on
Aspire.StackExchange.Redis.Connect to Redis
See also
Section titled “See also”- Redis distributed caching
- Redis output caching
- Redis hosting extensions — Community Toolkit extensions including DbGate.
- Valkey integration — RESP-compatible open-source Redis fork.
- Garnet integration — Microsoft’s high-performance RESP-compatible server.