liveBook · Manning

Framework-dependent deployment

As explained in ASP.NET Core in Action, 3e

A framework-dependent deployment publishes an application without bundling the .NET runtime, which must already be installed on the target machine.

A framework-dependent deployment (also called a runtime-dependent deployment, or RDD) publishes an already-built ASP.NET Core application without bundling the .NET runtime. The target machine must already have the .NET 7 Runtime installed. In return, the deployment is smaller and can run on Windows, Linux, or macOS without recompilation. section 27.1.1

Deploy an RDD with these practical steps:

  • Publish the application, for example with dotnet publish --output publish --configuration Release. section 27.1.1
  • Install the .NET 7 Runtime and necessary prerequisites on the target server. section 27.3.1
  • Copy the published files to the server and run the compiled application with dotnet ExampleApp.dll. section 27.1.1 section 27.3.1
  • On Linux, optionally place NGINX, Apache, HAProxy, or YARP in front of the application and configure a separate process manager. section 27.3.1

A small published deployment

After publishing an application into a publish folder, copy that folder to a server with the .NET 7 Runtime installed and start the application with dotnet ExampleApp.dll. The published output includes the application DLL and additional files such as wwwroot. section 27.1.1

dotnet publish --output publish --configuration Release

Use the publishing command to create the deployment output rather than copying the development build folder. section 27.1.1

How ASP.NET Core in Action, 3e covers it

How deep it goes
Explains runtime dependency, portability, size tradeoffs, publishing, and Linux prerequisites, but defers detailed runtime installation.
Examples
Uses ExampleApp.dll, dotnet publish, and Linux hosting behind NGINX, Apache, HAProxy, or YARP.
What it assumes
Assumes a built ASP.NET Core application and requires the target’s .NET 7 Runtime plus necessary server prerequisites.
What you can do after
Operate/configure a published application by installing its runtime, copying its output, running its DLL, and routing traffic to it.
How it connects
Connects publishing with the .NET Runtime, .NET SDK, self-contained deployment, operating systems, reverse proxies, and process managers.

Also explained in

Compare how 2 books explain framework-dependent deployment →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of ASP.NET Core in Action, 3e. The section links point to the parts of the book it draws on.