Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Docker for windows][Docker ARM] Support amd64 based images on ARM with Prism emulation #686

Open
lHersey opened this issue Jul 5, 2024 · 3 comments
Assignees
Labels
community_new New idea raised by a community contributor

Comments

@lHersey
Copy link

lHersey commented Jul 5, 2024

Tell us about your request
I'm not an expert on this part, but I know that there is an option for ARM devices on mac (m1,m2,m3) to use rosetta to run intel based images (This helped a lot of mssql users)

Is it possible to use the windows emulation layer (PRISM) to try something similar?

Which service(s) is this request for?
Docker Desktop (ARM) for Windows

Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
Lack of ARM compatible images

Are you currently working around the issue?
I haven't found any workaround for this

Additional context
Current error trying to run linux/amd64 images on linux/arm64/v8 devices:

Invalid mapping of address 0x2aaaad74d000 in reserved address space below 0x40000000000

@lHersey lHersey added the community_new New idea raised by a community contributor label Jul 5, 2024
@lHersey lHersey changed the title [Docker for windows][Docker ARM] Support Linux based images on ARM with Prism emulation [Docker for windows][Docker ARM] Support amd64 based images on ARM with Prism emulation Jul 5, 2024
@doringeman
Copy link

Hello @lHersey,

You should be able to run amd64 images on Docker Desktop for Windows on Arm.
See https://docs.docker.com/build/building/multi-platform/#qemu.

Does the following work?

docker run -it --rm --platform linux/amd64 alpine

@lHersey
Copy link
Author

lHersey commented Jul 12, 2024

Not necessarily, there seem to be some images that are incompatible with QEMU emulation (see microsoft/mssql-docker#668)

Rosseta on M1/M2/M3 supports more images than QEMU, so I would like to know if the same can be said of PRISM for Windows.

That was fixed with Rosseta emulation. it would be better to have native arm support from the image provider, but since Rosseta worked I thought the same could be applied to windows on arm.

Right now, there is no way to get MSSQL on windows on arm (Just the azure-edge version but that doesn't fit everybody needs)

@ben-page-csat
Copy link

ben-page-csat commented Aug 22, 2024

Hello @lHersey,

You should be able to run amd64 images on Docker Desktop for Windows on Arm. See https://docs.docker.com/build/building/multi-platform/#qemu.

Does the following work?

docker run -it --rm --platform linux/amd64 alpine

This helps build multi-platform images. But it does not address the need to run amd64 images on arm64 hardware. He need Prism for that, much like how Rosetta supports this on Mac OS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community_new New idea raised by a community contributor
Projects
None yet
Development

No branches or pull requests

4 participants