GitHub Action to install QEMU static binaries
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
Vedant Madane 7c1669ef08 docs: add multi-platform build example to README 3 weeks ago
.github ci: update-dist workflow 2 months ago
__tests__ cache-image input to enable/disable caching of binfmt image 1 year ago
dist chore: update generated content 3 months ago
src display binfmt version 1 year ago
.dockerignore
.editorconfig
.gitattributes
.gitignore
.prettierignore
.prettierrc.json
.yarnrc.yml update yarn to 4.9.2 5 months ago
LICENSE
README.md docs: add multi-platform build example to README 3 weeks ago
action.yml cache-image input to enable/disable caching of binfmt image 1 year ago
codecov.yml
dev.Dockerfile
docker-bake.hcl update bake-action to v6 1 year ago
eslint.config.js migrate eslint config to new format required since 9.0.0 3 months ago
jest.config.js update jest config since 30.0 3 months ago
package.json migrate eslint config to new format required since 9.0.0 3 months ago
tsconfig.json
yarn.lock migrate eslint config to new format required since 9.0.0 3 months ago

README.md

GitHub release GitHub marketplace CI workflow Test workflow Codecov

About

GitHub Action to install QEMU static binaries.

Screenshot


Usage

name: ci

on:
  push:

jobs:
  qemu:
    runs-on: ubuntu-latest
    steps:
      -
        name: Set up QEMU
        uses: docker/setup-qemu-action@v3

[!NOTE] If you are using docker/setup-buildx-action, this action should come before it:

    -
      name: Set up QEMU
      uses: docker/setup-qemu-action@v3
    -
  • name: Set up Docker Buildx uses: docker/setup-buildx-action@v3

### Multi-platform build example

The following example shows how to use this action to build and push a multi-platform image for `linux/amd64` and `linux/arm64` using [Buildx](https://github.com/docker/buildx):

```yaml
name: ci

on:
push:
branches:
- 'main'

jobs:
docker:
runs-on: ubuntu-latest
steps:
-
  name: Set up QEMU
  uses: docker/setup-qemu-action@v3
-
  name: Set up Docker Buildx
  uses: docker/setup-buildx-action@v3
-
  name: Login to Docker Hub
  uses: docker/login-action@v3
  with:
    username: ${{ secrets.DOCKERHUB_USERNAME }}
    password: ${{ secrets.DOCKERHUB_TOKEN }}
-
  name: Build and push
  uses: docker/build-push-action@v6
  with:
    push: true
    tags: user/app:latest
    platforms: linux/amd64,linux/arm64

Customizing

inputs

The following inputs can be used as step.with keys:

Name Type Default Description
image String tonistiigi/binfmt:latest QEMU static binaries Docker image
platforms String all Platforms to install (e.g., arm64,riscv64,arm)
cache-image Bool true Cache binfmt image to GitHub Actions cache backend

outputs

The following outputs are available:

Name Type Description
platforms String Available platforms (comma separated)

Contributing

Want to contribute? Awesome! You can find information about contributing to this project in the CONTRIBUTING.md