I have an already existing docker image that is linux/arm64 because i have an m1 mac, but I want to host it on azure.
{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.","details":[{"code":"WebhookInvalidParameterValue","message":"The following field(s) are either invalid or missing. Invalid value: "myregistry.azurecr.io/myproject:latest": image OS/Arc must be linux/amd64 but found linux/arm64: template.containers.myproject.image."}]}
Is it a way to host the existing image on azure or convert it to linux/amd64?
CodePudding user response:
Currently, Azure Container Apps only support Linux-based x86-64 (linux/amd64) container images so you can't deploy an ARM-based container. Documentation
On a M1 Mac, you can build multiarch containers using Buildx. This way, you can build an x86-64 version of your container that you'll be able to deploy on Container Apps. Documentation
CodePudding user response:
You can also build the container image using your Azure Container Registry, instead of building it locally using cross-compile. ACR can build it for amd64.
https://docs.microsoft.com/en-us/cli/azure/acr?view=azure-cli-latest#az-acr-build