binfmt icon indicating copy to clipboard operation
binfmt copied to clipboard

my computer is linux mips64el with 4.19.0 kernel. does it is supported?

Open zhizunbao84 opened this issue 2 years ago • 2 comments

after git clone this repo, i run docker buildx bake, i get this error:

user@user-PC:~/my_develop/my_go/binfmt$ docker buildx ls
NAME/NODE DRIVER/ENDPOINT STATUS  PLATFORMS
default * docker                  
  default default         running linux/mips64le, linux/amd64, linux/arm64, linux/riscv64, linux/ppc64le, linux/s390x, linux/386, linux/arm/v7, linux/arm/v6

user@user-PC:~/my_develop/my_go/binfmt$ docker buildx bake
[+] Building 15.9s (3/3) FINISHED                                                         
 => [internal] load build definition from Dockerfile                                 0.0s
 => => transferring dockerfile: 4.75kB                                               0.0s 
 => [internal] load .dockerignore                                                    0.0s 
 => => transferring context: 88B                                                     0.0s 
 => ERROR resolve image config for docker.io/docker/dockerfile:1                    15.8s 
------
 > resolve image config for docker.io/docker/dockerfile:1:
------
error: failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to solve with frontend gateway.v0: no match for platform in manifest sha256:42399d4635eddd7a9b8a24be879d2f9a930d0ed040a61324cfdf59ef1357b3b2: not found

zhizunbao84 avatar Aug 15 '22 02:08 zhizunbao84

docker/dockerfile image does not (yet) support this arch. We need first to add support for mips archs in xx, see https://github.com/tonistiigi/xx/pull/62.

In the meantime you can remove the # syntax in your Dockerfile.

Btw, have you built docker cli, dockerd and buildx yourself? Or are you using a package repository?

crazy-max avatar Aug 15 '22 11:08 crazy-max

@crazy-max @tonistiigi

i want to run amd64 docker image on my linux mips64el host.

and i install tonistiigi/binfmt which supports mips64le, https://hub.docker.com/layers/tonistiigi/binfmt/qemu-v6.0.0/images/sha256-17542196da571526b9606f3577ec1ae135b66425421dbc81085e6918d93af484

some amd64 docker images work fine, but some get errors:

qemu:handle_cpu_signal received signal outside vCPU context

/usr/bin/mongod: error while loading shared libraries: libcurl.so.4: failed to map segment from shared object

more info you can see https://github.com/moby/moby/issues/43956#issue-1337879319

is thers something i can do to solve it? such as build amd64 docker image on my own? or just give up?

zhizunbao84 avatar Aug 16 '22 10:08 zhizunbao84

fixed in https://github.com/moby/buildkit/pull/3178

crazy-max avatar Dec 13 '22 12:12 crazy-max