dotnet / dotnet/sdk-container-builds

Support buildx-style multi-arch manifest generation for better registry management

Open
#650 2 comments 1 reaction 0 assignees View on GitHub
Dominant language
No language data
Stars
197
Forks
53
PR merge metrics
No merged PRs in 30d

Description

When using `dotnet publish -t:PublishContainer` to produce multi-arch images, the current implementation builds each architecture separately and then merges them into a manifest list. In container registries like Harbor, this results in the manifest and the individual architecture images being displayed at the same level, which makes management less intuitive.

By contrast, images produced with `docker buildx build --platform ... --push` appear in Harbor as a single manifest object. You can then drill down into the manifest to see the architecture-specific images. This hierarchy is easier to manage and aligns with how most registries present multi-arch images.

Is there any plan to support a buildx-style workflow in the .NET SDK, where `dotnet publish` could directly produce a multi-arch manifest in one step? This would simplify registry management and provide a more consistent experience across platforms.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the `dotnet publish -t:PublishContainer` entry point and compare its current multi-architecture workflow with `docker buildx build --platform ... --push`. Review how the generated manifest and architecture-specific images are pushed to registries such as Harbor. Done means a documented or implemented buildx-style workflow that presents one drill-down multi-arch manifest object.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker
Domain
build-system, devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.