Skip to content

aspire deploy command

This article applies to: ✔️ Aspire CLI 9.4.0 and later versions.

aspire deploy - Deploy a codebase orchestrated with Aspire to specified targets.

Aspire CLI
aspire deploy [options] [[--] <additional arguments>...]

The aspire deploy command first invokes the aspire publish command. After which, Aspire invokes all DeployingCallbackAnnotation resource annotations, in the order they’re declared.

The Aspire CLI uses the following logic, in order, to determine which AppHost project to process:

  • The --project option.

    This option specifies the path to a project to process.

  • The .aspire/settings.json config file.

    If the config file path exists in the current directory, it’s used. If not, the CLI walks up the directory structure looking for the config file. If it finds a config file, it reads the appHostPath setting value as the project to process.

  • Searches the current directory and subdirectories.

    Starting in the current directory, the CLI gathers all AppHost projects from that directory and below. If a single project is discovered, it’s automatically selected. If multiple projects are discovered, they’re printed to the terminal for the user to manually select one of the projects.

    Once a project is selected, either automatically or manually, the path to the project is stored in the .aspire/settings.json config file.

The command performs the following steps to deploy an app orchestrated with Aspire:

  • Creates or modifies the .aspire/settings.json config file in the current directory, and sets the appHostPath config value to the path of the AppHost project file.
  • Installs or verifies that Aspire’s local hosting certificates are installed and trusted.
  • Builds the AppHost project and its resources.
  • Starts the AppHost and its resources.
  • Invokes all PublishingCallbackAnnotation resource annotations.
  • Invokes all DeployingCallbackAnnotation resource annotations.

The following options are available:

  • --

    Delimits arguments to aspire publish from arguments for the AppHost. All arguments after this delimiter are passed to the apphost.

  • --project

    The path to the Aspire AppHost project file.

  • -o, --output-path

    The output path for deployment artifacts. Defaults to a folder named deploy in the current directory.

  • -?, -h, --help

    Prints help and usage documentation for the available commands and options.

  • -d, --debug

    Enable debug logging to the console, which prints detailed information about what .NET Aspire CLI is doing when a command is run.

  • --wait-for-debugger

    Wait for a debugger to attach before running a command.

  • Search the current directory structure for AppHost projects to build, publish, and deploy:

    Aspire CLI
    aspire deploy
  • Publish and deploy an Aspire apphost and its dependencies:

    Aspire CLI
    aspire deploy --project './projects/apphost/orchestration.AppHost.csproj'
  • Publish and deploy an Aspire AppHost with arguments:

    Aspire CLI
    aspire deploy --project './projects/apphost/orchestration.AppHost.csproj' -- -fast
Ask & Answer Collaborate Community Discuss Watch