container-publish

Publish .NET applications as OCI container images without Dockerfiles.

Updated Apr 27, 2026
One-click install
npx skills add https://github.com/shahdanish/vibepos --skill container-publish-shahdanish
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: container-publish
Source: https://github.com/shahdanish/vibepos/tree/main/skills/container-publish
Command: npx skills add https://github.com/shahdanish/vibepos --skill container-publish-shahdanish

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It removes the extra work of writing and maintaining Dockerfiles by letting you containerize .NET apps directly through MSBuild so you can ship consistent OCI images.

Core Features & Use Cases

  • No Dockerfile workflow: Build and publish container images via the .NET SDK container publishing target, ideal when you want simplicity and fewer build artifacts.
  • Production-ready chiseled images: Configure noble-chiseled (or noble-chiseled-extra) to reduce attack surface and image size while keeping a modern runtime.
  • Registry + multi-arch publishing: Publish directly to registries using ContainerRegistry and support multi-architecture outputs for x64 and arm64 in a single publish flow.
  • CI-friendly tarball output: Create container archives (tarballs) for scanning or workflows where a Docker daemon is not available.

Quick Start

Run a Linux container publish with dotnet publish /t:PublishContainer --os linux --arch x64 to generate an OCI image without writing a Dockerfile.

Frequently Asked Questions about container-publish

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I publish a .NET app as an OCI container without a Dockerfile?

You can publish a .NET app as an OCI container without a Dockerfile by using the .NET SDK container publish target. Execute `dotnet publish /t:PublishContainer` with specified OS and architecture to generate the image directly through MSBuild.

Can I build multi-architecture container images for .NET using MSBuild?

Yes, MSBuild supports multi-architecture image indexes for .NET container publishing. You can target both x64 and arm64 architectures in a single publish flow to create a unified OCI compliant image index.

What are chiseled images and how do I use them for .NET container publishing?

Chiseled images are production-ready containers with a reduced attack surface and smaller image size. Configure `noble-chiseled` or `noble-chiseled-extra` using the `ContainerFamily` MSBuild property to use them during your .NET SDK publish.

Does .NET container publishing support outputting tarballs for CI scanning?

Yes, the .NET container publish target supports CI-friendly tarball output. This allows you to create container archives for security scanning or workflows where a Docker daemon is not available.

How do I configure a .NET application to publish directly to a container registry?

You configure registry publishing by setting the `ContainerRegistry` and `ContainerRepository` MSBuild properties in your project. This enables the .NET SDK to push the generated OCI image directly to your specified registry.