Chapter 4. Publishing applications with .NET 8.0

.NET 8.0 applications can be published to use a shared system-wide version of .NET or to include .NET.

The following methods exist for publishing .NET 8.0 applications:

  • Self-contained deployment (SCD) - The application includes .NET. This method uses a runtime built by Microsoft.
  • Framework-dependent deployment (FDD) - The application uses a shared system-wide version of .NET.

When publishing an application for RHEL, Red Hat recommends using FDD, because it ensures that the application is using an up-to-date version of .NET, built by Red Hat, that uses a set of native dependencies.


4.1. Publishing .NET applications

The following procedure outlines how to publish a framework-dependent application.


  1. Publish the framework-dependent application:

    $ dotnet publish my-app -f net8.0

    Replace my-app with the name of the application you want to publish.

  2. Optional: If the application is for RHEL only, trim out the dependencies needed for other platforms:

    $ dotnet publish my-app -f net8.0 -r rhel.8-architecture --self-contained false
    • Replace architecture based on the platform you are using:

      • For Intel: x64
      • For IBM Z and LinuxONE: s390x
      • For 64-bit Arm: arm64
      • For IBM Power: ppc64le