Microsoft.NET.Build.Containers 8.0.102

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Microsoft.NET.Build.Containers --version 8.0.102
NuGet\Install-Package Microsoft.NET.Build.Containers -Version 8.0.102
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.NET.Build.Containers" Version="8.0.102" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Microsoft.NET.Build.Containers --version 8.0.102
#r "nuget: Microsoft.NET.Build.Containers, 8.0.102"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Microsoft.NET.Build.Containers as a Cake Addin
#addin nuget:?package=Microsoft.NET.Build.Containers&version=8.0.102

// Install Microsoft.NET.Build.Containers as a Cake Tool
#tool nuget:?package=Microsoft.NET.Build.Containers&version=8.0.102

.NET SDK Containers

This package lets you build container images from your projects with a single command.

Getting Started

To build a container from the SDK, add this package and run the publish command, specifying the DefaultContainer PublishProfile. You can learn more about Publish Profiles in the documentation.

>dotnet add package Microsoft.NET.Build.Containers
>dotnet publish --os linux --arch x64 -p:PublishProfile=DefaultContainer
...
Pushed container '<your app name>:<your app version>' to registry 'docker://'
...

Out of the box, this package will infer a number of properties about the generated container image, including which base image to use, which version of that image to use, and where to push the generated image. You have control over all of these properties, however. You can read more about these customizations here.

Note: This package only supports Web projects (those that use the Microsoft.NET.Sdk.Web SDK) in this version.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • net8.0

    • No dependencies.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Microsoft.NET.Build.Containers:

Package Downloads
UtilityBelt.Server

UBNet server.

IPP.PORTIC.SAFHE.Library

This software regards the project number 070200, SAFHE - Safe Health Elderly Monitoring, an EU funded project, and constitutes the technical contribution of the PORTIC-IPP together with the ESS-IPP (specifically both entities PORTIC - Porto Research, Technology and Innovation Center, and ESS - Escola Superior de Saúde, both sub-entities from the institution IPP - Instituto Politécnico do Porto) to the project.! The url of the project is: https://www.portic.ipp.pt/project.html

MultiChannelReportLog-ex-1

Package Description

GitHub repositories (7)

Showing the top 5 popular GitHub repositories that depend on Microsoft.NET.Build.Containers:

Repository Stars
fullstackhero/dotnet-webapi-starter-kit
production grade .net 8 webapi starter kit with multitenancy support and clean code. 🔥
microsoft/dotnet-podcasts
.NET reference application shown at .NET Conf featuring ASP.NET Core, Blazor, .NET MAUI, Microservices, Orleans, Playwright, and more!
davidfowl/TodoApi
Todo application with ASP.NET Core Blazor WASM, Minimal APIs and Authentication
asynkron/protoactor-dotnet
Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
Azure/Industrial-IoT
Azure Industrial IoT Platform
Version Downloads Last updated
9.0.100-preview.3.24204.14 120 4/11/2024
9.0.100-preview.2.24157.36 157 3/12/2024
9.0.100-preview.1.24101.1 398 2/13/2024
8.0.204 6,732 4/9/2024
8.0.202 10,195 3/12/2024
8.0.200 21,032 2/13/2024
8.0.104 158 4/9/2024
8.0.103 194 3/12/2024
8.0.102 266 2/13/2024
8.0.101 25,746 1/9/2024
8.0.100 47,903 11/14/2023
8.0.100-rc.2.23480.5 2,010 10/10/2023
8.0.100-rc.1.23462.41 1,064 9/14/2023
8.0.100-rc.1.23455.21 507 9/12/2023
8.0.100-preview.7.23376.5 1,204 8/8/2023
8.0.100-preview.6.23330.7 1,081 7/11/2023
8.0.100-preview.5.23303.1 1,017 6/13/2023
8.0.100-preview.4.23260.11 985 5/16/2023
7.0.408 940 4/9/2024
7.0.407 1,625 3/12/2024
7.0.406 4,092 2/13/2024
7.0.405 19,786 1/9/2024
7.0.404 19,686 11/14/2023
7.0.403 29,731 10/24/2023
7.0.402 15,218 10/10/2023
7.0.401 48,132 9/12/2023
7.0.400 106,543 8/8/2023
7.0.315 155 4/9/2024
7.0.314 193 3/12/2024
7.0.313 221 2/13/2024
7.0.312 194 1/9/2024
7.0.311 287 11/14/2023
7.0.310 315 10/24/2023
7.0.309 355 10/10/2023
7.0.308 391 9/12/2023
7.0.307 6,641 8/8/2023
7.0.306 44,805 7/11/2023
7.0.305 31,562 6/22/2023
7.0.304 13,932 6/13/2023
7.0.302 65,010 5/16/2023
0.4.0 184,850 3/22/2023
0.3.2 172,728 1/20/2023
0.2.7 141,780 10/27/2022
0.1.8 14,366 8/25/2022

# Microsoft.NET.Build.Containers 8.0.100

This version brings the following new features and enhancements:

* For .NET 8-targeting applications, the generated container user will not have root permissions by default. This is a breaking change from previous versions, but it is a more secure default. If you need to run your container as root, you can set the `ContainerUser` property to `root` in your project file. Note also that in .NET 8 several changes were made to the Microsoft .NET base images, like changing the default ASP.NET port to 8080, so applications newly-targeting .NET may have to adjust to these settings.
* Generated container images now default to using the `latest` tag instead of the value of the MSBuild `Version` property, to align with other container tooling. You can still override this behavior by setting the `ContainerTag` property in your project file.
* The `ContainerFamily` property was added to support choosing from different variants of image tags without needing to specify the entire base image. For example, to target Alpine Linux you can now set `ContainerFamily` to `alpine`.
* The generated images will now correctly set `User` and `ExposedPort` metadata based on well-known .NET Environment variables for these settings.
* We now support using base images that set `Entrypoint` instead of `Cmd`. The previous `ContainerEntrypoint` and `ContainerEntrypointArgs` properties are still supported, but will log a warning when used. You should now use `ContainerAppCommand` and `ContainerAppCommandArgs` instead to set the desired start application - these properties allow the tooling to select the proper app start command based on the base images' use of Entrypoint or Cmd. Thanks to @tmds for this functionality!
* We explicitly support using podman as a local destination for your containers. If `podman` is present on the system and `docker` is not, we will opt to use `podman` instead. If you'd like to make this behavior explicit you can set `LocalRegistry` to either `docker` or `podman`. Thanks to @tmds for this contribution!
* Permissions for files in the images not don't have the executable bit set unless it is necessary.
* Support for authenticating using Identity Token flows was added. This unblocks support for Azure Managed Identities, as well as all other registries where the result of `docker login <registry url>` is an Identity Token instead of an Access Token or Username/Password pair.