nerdctl icon indicating copy to clipboard operation
nerdctl copied to clipboard

Does nerdctl support manifest command to build multi-arch images?

Open gaussye opened this issue 1 year ago • 8 comments

What is the problem you're trying to solve

I am going to use nerdctl to replace docker for k8s containerd runtime. I also need to create both arm64 & x86 images for my applications. When i run nerdctl manifest command : nerdctl manifest create xxxx FATA[0000] unknown subcommand "manifest" for "nerdctl"

Describe the solution you'd like

Any command like 'docker manifest'?

Additional context

No response

gaussye avatar Sep 22 '23 02:09 gaussye

HI @gaussye

It's unimplemented . https://github.com/containerd/nerdctl/blob/main/docs/command-reference.md#unimplemented-docker-commands

yankay avatar Sep 22 '23 02:09 yankay

hi @yankay thanks. Any plan for the unimplemented docker commands. For now any workaround for it?

gaussye avatar Sep 22 '23 03:09 gaussye

workaround

nerdctl build --platform=amd64,arm64 --output type=image,name=example.com/foo:latest,push=true .

https://github.com/containerd/nerdctl/blob/v1.6.0/docs/multi-platform.md#build--push

AkihiroSuda avatar Sep 22 '23 03:09 AkihiroSuda

@AkihiroSuda for those of us not building the images, just the manifest, how would that workaround look to create just the manifest and push?

FernandoMiguel avatar Feb 20 '24 12:02 FernandoMiguel

@AkihiroSuda for those of us not building the images, just the manifest, how would that workaround look to create just the manifest and push?

Manifest of what?

AkihiroSuda avatar Feb 20 '24 13:02 AkihiroSuda

@AkihiroSuda image manifest, so we can have two arch images linked

FernandoMiguel avatar Feb 20 '24 13:02 FernandoMiguel

Hi,

In some scenarios, we may prefer/need to build images independently for each arch to avoid emulation when building an arch on a different arch (single command is nice but emulation is often not efficient). Then we need to combine these images in a manifest list. The current workaround is more to use manifest-tool, origin of docker manifest commands.

jlamande avatar Feb 28 '24 05:02 jlamande

thanks for the link to that amazing tool @jlamande

FernandoMiguel avatar Mar 04 '24 15:03 FernandoMiguel