microsoft / microsoft/aspire

Detect if containerd image store is used for multi-arch builds

Open
#12,595 2 comments 2 reactions 1 assignee Assigned to @Copilot View on GitHub
‼️regression-from-last-release needs-area-label
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

Multi-arch builds with Docker require that containerd is configured as the image store. We should detect if this is configured and warn the user if it is not.

- We can detect if containerd is enabled by running `docker info --format json` and checking the `driver-type` property.
- Users can enable containerd via the desktop app. There is a [way to automate this by editing config](https://docs.docker.com/engine/storage/containerd/) and we might be able to provide an `aspire do prepare-docker` command to help get this config in place.
- We should warn the user if the container runtime is not configured for multi-arch builds and commence using LinuxAmd64 as the default.
- There should be a new API on IContainerRuntime that is `CheckIfSupportsMultiArch` to detect this.
- Update the code for PodmanContainerRuntime to support calling `podman manifest create {imagename}` and passing the manifest to the `podman build` command.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.