Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Multi-node builds for OCI format #2351

Unanswered
jgutschon asked this question in Q&A
Discussion options

I'm trying to use the Kubernetes driver to create a multi-node builder with one node per architecture (linux/amd64 and linux/arm64) so I can create multi-platform manifests and build with the native architecture on each node. I've been using the containerd image store in the docker daemon and building with --output type=docker which has worked for multi-platform images with QEMU emulation and the default driver, however I'm now trying to speed this up with native builders on the k8s driver.

When I try building with a multi-node builder I receive the following error:

ERROR: oci for multi-node builds currently not supported

which is coming from https://github.com/docker/buildx/blob/master/build/build.go#L324

return errors.Errorf("%s for multi-node builds currently not supported", e.Type)

I'm wondering if this is a technical limitation of buildx or if it just assumes I'm using the default docker image store which doesn't support OCI image types (which I guess is what --output type=docker uses with the containerd image store?)

This seems like a simple enough change to avoid this error message if the containerd snapshotter feature is enabled, however, I'm unsure of how that can be checked within buildx. I'd be happy to open a PR for this if that's the only issue, just wondering if someone can provide some more info here.

Side note: I'm avoiding using --output type=registry or --push since our CI pipelines have a few steps between building and pushing. Ideally, the image would be built and kept in the local image store.

You must be logged in to vote

Replies: 3 comments

Comment options

We are facing with the same issue, type=oci and dest = .tar file. We used remote driver that connect to existing multi-node buildkit (multi-arch, running on k8s).

You must be logged in to vote
0 replies
Comment options

any update ?

You must be logged in to vote
0 replies
Comment options

any update ?

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet

AltStyle によって変換されたページ (->オリジナル) /