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.
3.9 KiB
3.9 KiB
About
GitHub Action to install QEMU static binaries.
Usage
name: ci
on:
push:
jobs:
qemu:
runs-on: ubuntu-latest
steps:
-
name: Set up QEMU
uses: docker/setup-qemu-action@v4
[!NOTE] If you are using
docker/setup-buildx-action, this action should come before it:- name: Set up QEMU uses: docker/setup-qemu-action@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4
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:
name: ci
on:
push:
branches:
- 'main'
jobs:
docker:
runs-on: ubuntu-latest
steps:
-
name: Set up QEMU
uses: docker/setup-qemu-action@v4
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
-
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
