Skip to content

fix: remove QEMU setup, build linux/amd64 only on rootless Docker runners#51

Open
devops-bda wants to merge 1 commit into
mainfrom
fix/remove-qemu-rootless-docker
Open

fix: remove QEMU setup, build linux/amd64 only on rootless Docker runners#51
devops-bda wants to merge 1 commit into
mainfrom
fix/remove-qemu-rootless-docker

Conversation

@devops-bda

Copy link
Copy Markdown
Contributor

Root cause

Rootless Docker (self-hosted runners using unix:///run/user/<uid>/docker.sock) runs containers inside a user namespace. Even with --privileged, the container cannot write to /proc/sys/fs/binfmt_misc because that is a kernel-level operation requiring real root. This is a hard constraint of rootless Docker — no binfmt image version can work around it.

Changes

  • Removes docker/setup-qemu-action step entirely
  • Narrows platforms from linux/amd64,linux/arm64 to linux/amd64

To re-enable arm64 in future

Register QEMU binfmt handlers at the host level once, as root, outside of Docker:

sudo docker run --privileged --rm tonistiigi/binfmt --install all

Or via a systemd one-shot service on the runner host. Once registered at the kernel level, buildx can use them without any in-workflow QEMU setup.

🤖 Generated with Claude Code

…runners

Rootless Docker runs containers in a user namespace where --privileged
cannot write to /proc/sys/fs/binfmt_misc (a kernel-level operation).
No binfmt version resolves this — it is a hard constraint of rootless Docker.

Removes docker/setup-qemu-action and narrows platforms to linux/amd64,
which is the native architecture of the self-hosted runners. To re-enable
arm64 in future, register QEMU binfmt handlers at the host level once
(as root) using: docker run --privileged --rm tonistiigi/binfmt --install all

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant