Detect if containerd image store is used for multi-arch builds
- 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
Assessment
This issue has not been assessed yet.