You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When creating a simple Dockerfile that installs crun, setting the platform to linux/amd64, and then starting that container on an Apple Silicon (M2) laptop, crun immediately exits printing Failed to re-execute libcrun via memory file descriptor, likely coming from here.
When removing the --platform=linux/amd64, starting crun works as expected.
Steps to reproduce
Make sure you have an Apple Silicon device with docker and rosetta installed.
I could not reproduce this on amd64.
Here is the Dockerfile:
FROM --platform=linux/amd64 ubuntu:20.04
RUN apt-get update
RUN apt-get install -yqq crun
Build the docker image with docker build . -t test
Run it with docker run -it test, and when the shell opens, type crun and hit enter.
The text was updated successfully, but these errors were encountered:
I think amd64 images are not meant to run via Rosetta
They should be meant running with emulation or virtualization if is aarch64/arm64 images since
Unless you are on Linux bare metal
Native arm64 images cause issues with amd64 binaires so often the solution is to build the whole image for amd64, they get translated fine by Rosetta. But crun was the first binary that I found not to work in such a setting. Maybe something to look into for you
Native arm64 images cause issues with amd64 binaires so often the solution is to build the whole image for amd64, they get translated fine by Rosetta. But crun was the first binary that I found not to work in such a setting. Maybe something to look into for you
why you should use amd64 binaries?
what software do you want to run?
i think most of linux software is cross arch
Description
When creating a simple Dockerfile that installs crun, setting the platform to
linux/amd64
, and then starting that container on an Apple Silicon (M2) laptop, crun immediately exits printingFailed to re-execute libcrun via memory file descriptor
, likely coming from here.When removing the
--platform=linux/amd64
, startingcrun
works as expected.Steps to reproduce
Make sure you have an Apple Silicon device with docker and rosetta installed.
I could not reproduce this on amd64.
Here is the Dockerfile:
Build the docker image with
docker build . -t test
Run it with
docker run -it test
, and when the shell opens, typecrun
and hit enter.The text was updated successfully, but these errors were encountered: