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
4 changes: 4 additions & 0 deletions src/frontend/config/sidebar/reference.topics.ts
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,10 @@ export const referenceTopics: StarlightSidebarTopicsUserConfig = {
slug: 'reference/cli/commands/aspire-deploy',
},
{ label: 'aspire do', slug: 'reference/cli/commands/aspire-do' },
{
label: 'aspire doctor',
slug: 'reference/cli/commands/aspire-doctor',
},
{ label: 'aspire exec', slug: 'reference/cli/commands/aspire-exec' },
{ label: 'aspire init', slug: 'reference/cli/commands/aspire-init' },
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
---
title: aspire doctor command
description: Learn about the aspire doctor command and its usage. This command checks the Aspire development environment for common issues.
---

import Include from '@components/Include.astro';
import { Aside } from '@astrojs/starlight/components';

## Name

`aspire doctor` - Check the Aspire development environment for common issues.

## Synopsis

```bash title="Aspire CLI"
aspire doctor [options]
```

## Description

The `aspire doctor` command runs a series of diagnostic checks to verify that your development environment is properly configured for Aspire development. It checks prerequisites such as the .NET SDK, container runtime, and environment settings.

This command is useful for troubleshooting when you encounter issues with Aspire or when setting up a new development environment. The checks are grouped by category:

- **SDK checks**: Verifies .NET SDK installation and version requirements
- **Container checks**: Validates container runtime (Docker/Podman) availability and configuration
- **Environment checks**: Validates environment variables and other settings

The command displays results with clear status indicators:

- ✓ (green) - Check passed
- ⚠ (yellow) - Warning (non-blocking issue)
- ✗ (red) - Check failed (blocking issue)

If any checks fail, the command provides suggestions for how to fix the issues and links to relevant documentation.

## Options

The following options are available:

- **`--json`**

Outputs the check results in JSON format. This is useful for automation scenarios or when you need to parse the results programmatically.

- <Include relativePath="reference/cli/includes/option-help.md" />

- <Include relativePath="reference/cli/includes/option-debug.md" />

- <Include relativePath="reference/cli/includes/option-wait.md" />

## Examples

- Run diagnostic checks on your development environment:

```bash title="Aspire CLI"
aspire doctor
```

- Run diagnostic checks with JSON output:

```bash title="Aspire CLI"
aspire doctor --json
```

## Sample output

When you run `aspire doctor`, you see output similar to the following:

```bash title="Aspire CLI"
Environment Check
=================

SDK
✓ .NET SDK 10.0.100 or later is installed
✓ Aspire templates are available

Container Runtime
✓ Docker is installed and running
✓ Docker Compose is available

Environment
✓ ASPNETCORE_ENVIRONMENT is set correctly

Summary: 5 passed, 0 warnings, 0 failed
```

## Exit codes

The command returns the following exit codes:

| Exit code | Description |
| --------- | ------------------------------------------------- |
| `0` | All checks passed (warnings are allowed) |
| `1` | One or more checks failed |

## JSON output format

When using the `--json` option, the output includes a structured response with all check results and a summary:

```json
{
"checks": [
{
"category": "sdk",
"message": ".NET SDK 10.0.100 or later is installed",
"status": "Pass"
}
],
"summary": {
"passed": 5,
"warnings": 0,
"failed": 0
}
}
```

## See also

- [aspire command](../aspire/)
- [aspire run command](../aspire-run/)
- [Aspire CLI overview](../../overview/)
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ The following commands are available:
| [`aspire config`](../aspire-config/) | Stable | Configures the Aspire environment. |
| [`aspire deploy`](../aspire-deploy/) | Preview | Deploys the artifacts created by `aspire publish`. |
| [`aspire do`](../aspire-do/) | Preview | Execute a specific pipeline step and its dependencies. |
| [`aspire doctor`](../aspire-doctor/) | Stable | Check the development environment for common issues. |
| [`aspire exec`](../aspire-exec/) | Preview | Similar to the `aspire run` command, but passes commands to the apphost. |
| [`aspire init`](../aspire-init/) | Stable | Initialize Aspire support in an existing solution or create a single-file AppHost. |
| [`aspire mcp`](../aspire-mcp/) | Stable | Manage MCP (Model Context Protocol) server. |
Expand Down
Loading