Aspire CLI Cheat sheet
Aspire is an opinionated, cloud-ready stack for building observable, production-ready distributed applications. In 2026, the aspire CLI (distinct from the standard dotnet CLI) has become the primary way to manage these projects.
⚠️ Container Requirement: Aspire requires a container runtime (Docker Desktop or Podman) to manage resources like databases and caches. Ensure your runtime is active before running aspire run.
—
🛠️ Installation & Setup
Aspire is typically installed as a workload within the .NET SDK or as a standalone global tool.
| Command | Description |
|---|---|
| dotnet workload install aspire | Installs the Aspire workload (the foundation). |
| dotnet workload update | Keeps the Aspire SDK and templates up to date. |
| dotnet tool install -g Aspire.Cli | Installs the advanced aspire CLI (recommended). |
| aspire --version | Verify the current version of the Aspire CLI. |
—
🏗️ Project Lifecycle
Commands to scaffold and manage your distributed application structure.
- aspire new: An interactive wizard to create a new Aspire project (selects templates, sets names, and configures defaults).
- aspire init: Adds Aspire orchestration to an existing .NET solution. This creates the AppHost and ServiceDefaults projects.
- aspire add <PACKAGE>: Easily adds Aspire “Hosting” integrations (like Redis, Postgres, or Kafka) to your AppHost project.
- aspire update: Automatically updates all Aspire NuGet packages across your entire solution to the latest version.
—
🚀 Running & Developing
Aspire’s power lies in how it runs multiple services simultaneously with integrated telemetry.
- aspire run: The main command to start your distributed app.
- It builds all projects, starts containers (Docker/Podman), and launches the Aspire Dashboard.
- Tip: If it doesn’t find your project, use aspire run --project ./Myapp.AppHost.csproj.
- aspire run --no-build: Starts the orchestration without recompiling (faster for minor config tweaks).
- aspire run --watch: Enables hot-reloading across the entire distributed system.
—
📊 The Dashboard & Telemetry
The Aspire Dashboard is a browser-based UI for logs, traces, and metrics.
| Feature | How to access |
|---|---|
| Dashboard URL | Printed in the terminal logs when you run aspire run. |
| Structured Logs | View real-time console and OpenTelemetry logs for all services. |
| Distributed Traces | See how a single request travels through multiple services. |
| Metrics | View CPU, memory, and custom Counter data in visual charts. |
—
📦 Deployment (Cloud & Manifests)
Aspire uses a “Manifest” system to describe your infrastructure to deployment tools.
- aspire publish: Generates a manifest.json file. This is the “source of truth” that tools like azd or Kubernetes operators use to understand your app’s requirements.
- aspire deploy: A high-level command to push your orchestrated app to a target environment (often used in CI/CD).
- dotnet run --publisher manifest --output-path ./manifest.json: The low-level way to generate a manifest if you aren’t using the aspire CLI tool.
—
☁️ Aspire + azd (The Power Combo)
When you want to go to Azure, azd understands Aspire projects natively.
- azd init (select “Use .NET Aspire”)
- azd up (this automatically triggers aspire publish under the hood)