Skip to content

BuildKit, kept warm

Remote Docker builders

Dedicated BuildKit instances that attach to your job in under two seconds with a warm layer cache.

Under 2s attach

The builder is already running. Your job connects to it rather than starting one.

Native multi-arch

Separate amd64 and arm64 builders, no QEMU anywhere in the path.

Shared safely

Cache is scoped per repository with strict isolation between tenants.

docker build in CI is usually slow for one of three reasons: the cache is cold, the cache is being transferred, or the build is emulated. Remote builders address all three.

yaml
- uses: runnerhut/setup-buildx@v1
- uses: docker/build-push-action@v6
with:
push: true
tags: ghcr.io/acme/api:${{ github.sha }}

Common questions

How is a remote builder billed?
Per second of active build time, separately from runner minutes. Because the orchestrating runner can be small, the combined cost is usually below building on one large runner.
Can several jobs share one builder?
Yes. Matrix legs and separate workflows attach to the same builder and share its cache. Concurrent builds contend for CPU, so scale the builder or use one per architecture.
Does it work with docker compose?
Compose v2 is preinstalled on runners. The remote builder accelerates image builds; compose still runs services on the runner itself.

Your next build could be twice as fast, at half the price

Start free. Migrating away is the same one line, and we publish that diff too.