https://rancher.com/ logo
Title
q

quick-keyboard-83126

11/03/2022, 2:35 AM
Should this work?
% docker run --platform linux/arm/v7 -it busybox
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
399f7f376f22: Pull complete 
Digest: sha256:6bdd92bf5240be1b5f3bf71324f5e371fe59f0e153b27fa1f1620f78ba16963c
Status: Downloaded newer image for busybox:latest
exec /bin/sh: exec format error
f

fast-garage-66093

11/03/2022, 2:49 AM
Not sure, isn't
arm/v7
as 32-bit platform. It works if you use
linux/arm64/v8
Or just
linux/arm64
q

quick-keyboard-83126

11/03/2022, 2:49 AM
% docker run --platform linux/arm/v8 -it busybox   
exec /bin/sh: exec format error
f

fast-garage-66093

11/03/2022, 2:50 AM
arm64
q

quick-keyboard-83126

11/03/2022, 2:50 AM
Yes, that works:
% docker run --platform linux/arm64/v8 -it busybox     
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
15a8001affa7: Pull complete 
Digest: sha256:6bdd92bf5240be1b5f3bf71324f5e371fe59f0e153b27fa1f1620f78ba16963c
Status: Downloaded newer image for busybox:latest
/ #
But, I don't control the input here. I'm trying to run earthly's tests and they insist on
linux/arm/v7
as one of the things they're testing.
f

fast-garage-66093

11/03/2022, 2:51 AM
Then you need to install the qemu-static handler for it yourself:
docker run --privileged --rm tonistiigi/binfmt --install arm
We only install
arm64
on Intel machines, and
amd64
on ARM machines
q

quick-keyboard-83126

11/03/2022, 2:53 AM
that works:
jsoref@jsoref-mbp earthly % docker run --privileged --rm tonistiigi/binfmt --install arm
Unable to find image 'tonistiigi/binfmt:latest' locally
latest: Pulling from tonistiigi/binfmt
6dda554f4baf: Pull complete 
2b0720d7a501: Pull complete 
Digest: sha256:66e11bea77a5ea9d6f0fe79b57cd2b189b5d15b93a2bdb925be22949232e4e55
Status: Downloaded newer image for tonistiigi/binfmt:latest
installing: arm OK
{
  "supported": [
    "linux/arm64",
    "linux/amd64",
    "linux/arm/v7",
    "linux/arm/v6"
  ],
  "emulators": [
    "qemu-arm",
    "qemu-x86_64"
  ]
}
jsoref@jsoref-mbp earthly % docker run --platform linux/arm/v7 -it busybox
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
Digest: sha256:6bdd92bf5240be1b5f3bf71324f5e371fe59f0e153b27fa1f1620f78ba16963c
Status: Downloaded newer image for busybox:latest
/ #
f

fast-garage-66093

11/03/2022, 2:53 AM
You will need to re-run the binfmt installer after each restart, as it is only loaded into memory
q

quick-keyboard-83126

11/03/2022, 2:54 AM
is it remotely possible for rancher desktop to detect users are trying to run an arm/v7 thing and tell them how to deal w/ this?
f

fast-garage-66093

11/03/2022, 2:55 AM
I don't know. We could look at including the emulator, but where do we draw the line? Include s390x emulator run run mainframe images?
I have to look again, but we didn't include all of them because I think total size would be like another 100MB (for things most users would never need)
q

quick-keyboard-83126

11/03/2022, 2:56 AM
I'd rather a detection thing that suggests the command than bundling the full set
although if you wanted to add a pane in the settings to let me check a bunch of supplemental platforms, i'd be game for that
f

fast-garage-66093

11/03/2022, 2:56 AM
Hmm, toni's image is just 60MB
The question is if we bundle them, or download on demand. If we have to bundle all the emulators, then we can just as well install them (I think, not sure how much RAM that would waste if they are loaded, but unused)
Please file a Github issue, so we have a record that at least one person asked for it... (and gives others a place to put their 👍 reactions
q

quick-keyboard-83126

11/03/2022, 2:59 AM
Sigh, I was about to ask if you'd file the issue. But, ok... here goes
f

fast-garage-66093

11/03/2022, 2:59 AM
Thank you!
The advantage of you filing it is that you get notified when we do something with it
q

quick-keyboard-83126

11/03/2022, 3:00 AM
Yeah yeah. The disadvantage is that my characterization will be much worse 🙂
Anyway, working on it