Is your feature request related to a problem? Please describe.
I encountered a few issues when using multi-architecture support:
The docker image for sudo podman run --rm --privileged multiarch/qemu-user-static --reset -p yes is available from the docker.io registry, but the registry prefix is missing in the command. It now shows an error message (Ubuntu 21.04) or asks which registry to use (CentOS 8).
The multiarch/qemu-user-static image is only available for the amd64 architecture. A multi-architecture image would be preferred instead.
It seems that QEMU and binfmt support is only needed for multi-arch builds from dockerfiles that do contain RUN instructions. buildah run is not called by this action. Using qemu-user-static for other builds might unnecessary slow them down and consume additional bandwidth.
The Multi arch builds section talks about installingqemu-user-static. The word install suggests that the changes are still present after a reboot of the host machine. However, this process should be repeated after each reboot.
Describe the solution you'd like
Use sudo podman run --rm --privileged docker.io/multiarch/qemu-user-static --reset -p yes instead, which includes the docker.io prefix.
Any reference to amd64 should be replaced by host architecture.
Use sudo podman run --rm --privileged docker.io/tonistiigi/binfmt --install all because it supports 8 different host architectures. The same image is also used by docker/setup-qemu-action
Describe that the process must be repeated after rebooting the host machine. Or suggest to run sudo apt install -y qemu-user-static.
Describe alternatives you've considered
sudo podman run --rm --privileged docker.io/aptman/qus -s -- -p could also be an option
Additional context
Error on Ubuntu 21.04: error getting default registries to try: short-name "multiarch/qemu-user-static" did not resolve to an alias and no unqualified-search registries are defined in "/etc/containers/registries.conf"
Error: {"msg":"exec container process /register: Exec format error","level":"error","time":"2021-06-14T12:23:06.000446093Z"}
Is your feature request related to a problem? Please describe.
I encountered a few issues when using multi-architecture support:
sudo podman run --rm --privileged multiarch/qemu-user-static --reset -p yes
is available from the docker.io registry, but the registry prefix is missing in the command. It now shows an error message (Ubuntu 21.04) or asks which registry to use (CentOS 8).amd64
architecture. This assumption is not correct when using self-hosted runner applications forarm64
andarm32
architectures.multiarch/qemu-user-static
image is only available for the amd64 architecture. A multi-architecture image would be preferred instead.buildah run
is not called by this action. Using qemu-user-static for other builds might unnecessary slow them down and consume additional bandwidth.qemu-user-static
. The word install suggests that the changes are still present after a reboot of the host machine. However, this process should be repeated after each reboot.Describe the solution you'd like
sudo podman run --rm --privileged docker.io/multiarch/qemu-user-static --reset -p yes
instead, which includes the docker.io prefix.amd64
should be replaced by host architecture.sudo podman run --rm --privileged docker.io/tonistiigi/binfmt --install all
because it supports 8 different host architectures. The same image is also used by docker/setup-qemu-actionqemu-user-static
is only needed when RUN instructions are used in dockerfiles.sudo apt install -y qemu-user-static
.Describe alternatives you've considered
sudo podman run --rm --privileged docker.io/aptman/qus -s -- -p
could also be an optionAdditional context
/register
: Exec format error","level":"error","time":"2021-06-14T12:23:06.000446093Z"}