microsoft/aspire · error · NotSupportedException
Container runtime ' ' does not support image configuration…
Error message
Container runtime '{runtime.Name}' does not support image configuration inspection, which is required for Azure sandbox deployment. What it means
To capture entrypoint/command metadata for the sandbox disk image, the integration inspects the local image configuration via InspectImageConfigAsync. If the runtime reports Status == Unsupported for configuration inspection, deployment throws NotSupportedException, mirroring the manifest-inspection check.
Solutions
- Install a fully supported runtime (Docker Desktop or Podman) and ensure it is first on PATH.
- Upgrade the runtime to a version supporting image configuration inspection.
- Check the runtime name in the message to identify which tool was resolved and correct PATH/ordering.
- Alternatively supply the image from a registry with a supported runtime available so config inspection can run.
Example fix
// before (shell) which docker # resolves to a limited wrapper script // after export PATH="/usr/bin:$PATH" # or install Docker Desktop/Podman; re-run aspire deploy
Defensive patterns
Strategy: validation
Validate before calling
var proc = await Process.RunAsync("docker", "image inspect <image>");
if (proc.ExitCode != 0) throw new InvalidOperationException("Runtime cannot inspect image config; install Docker/Podman."); Prevention
- Use a full-featured runtime (Docker Desktop/Podman) on the deploy machine.
- Confirm `docker image inspect` returns config before deploying.
- Avoid stripped-down runtime wrappers on PATH.
When it happens
Trigger: InspectLocalContainerImageAsync calls runtime.InspectImageConfigAsync, and the resolved runtime adapter returns ContainerImageInspectionStatus.Unsupported — the runtime tool cannot export image config (e.g. minimal or nonstandard runtime implementation).
Common situations: Machine has an exotic or stripped-down container runtime resolved first on PATH; a runtime CLI lacking `image inspect`/config export capability; misconfigured runtime selection picking the wrong tool.
Understand the failure class
Background: "unsupported platform" / "not supported on this platform" errors: what they mean and how to fix them — this error's family across 47 libraries.
Related errors
- Container runtime ' ' does not support image manifest…
- Container runtime did not return image configuration for
- Container image ' ' does not contain a linux/amd64 manifest…
- Container runtime ' ' was not found on PATH. Install or set…
- Resource ' ' cannot be deployed to Azure sandbox group ' '…
AI-assisted analysis of microsoft/aspire@25830f84bd (2026-09-16).
Data as JSON: /api/errors/d1c798d98735ce1a.
Report an issue: GitHub.
Appendix: source
Thrown at src/Aspire.Hosting.Azure.Sandboxes/AzureSandboxContainerDeployment.cs:1111
var entrypoint = resource is ContainerResource container && !string.IsNullOrWhiteSpace(container.Entrypoint)
? new[] { container.Entrypoint }
: null;
var command = resolvedArgs.Count == 0 ? null : resolvedArgs;
return new ResolvedModeledCommand(entrypoint, command, egressHosts);
}
internal static bool HasModeledCommandConfiguration(IResource resource) =>
resource is ContainerResource { Entrypoint: { Length: > 0 } } ||
resource.TryGetAnnotationsOfType<CommandLineArgsCallbackAnnotation>(out var callbacks) && callbacks.Any();
private static async Task<ContainerImageMetadata> InspectLocalContainerImageAsync(PipelineStepContext context, string imageReference)
{
var runtime = await ResolveContainerRuntimeAsync(context).ConfigureAwait(false);
var result = await runtime.InspectImageConfigAsync(imageReference, context.CancellationToken).ConfigureAwait(false);
if (result.Status == ContainerImageInspectionStatus.Unsupported)
{
throw new NotSupportedException(
$"Container runtime '{runtime.Name}' does not support image configuration inspection, which is required for Azure sandbox deployment.");
}
if (result.Status == ContainerImageInspectionStatus.Failed)
{
throw new InvalidOperationException(
result.ErrorMessage ?? $"Container runtime failed to inspect image configuration '{imageReference}'.");
}
if (!result.TryGetConfig(out var config))
{
throw new InvalidOperationException($"Container runtime did not return image configuration for '{imageReference}'.");
}
return new ContainerImageMetadata(
config.Entrypoint,
config.Command,
new Dictionary<string, string>(StringComparer.Ordinal),View on GitHub (pinned to 25830f84bd)