FreeBSD Manual Pages
podman-manifest(1) General Commands Manual podman-manifest(1) NAME podman-manifest - Create and manipulate manifest lists and image indexes SYNOPSIS podman manifest subcommand DESCRIPTION The podman manifest command provides subcommands which can be used to: * Create a working Docker manifest list or OCI image index. SUBCOMMANDS +----------+-----------------------------+----------------------+ | Command | Man Page | Description | +----------+-----------------------------+----------------------+ | add | podman-manifest-add(1) | Add an image or ar- | | | | tifact to a manifest | | | | list or image index. | +----------+-----------------------------+----------------------+ | annotate | podman-manifest-annotate(1) | Add and update in- | | | | formation about an | | | | image or artifact in | | | | a manifest list or | | | | image index. | +----------+-----------------------------+----------------------+ | create | podman-manifest-create(1) | Create a manifest | | | | list or image index. | +----------+-----------------------------+----------------------+ | exists | podman-manifest-exists(1) | Check if the given | | | | manifest list exists | | | | in local storage | +----------+-----------------------------+----------------------+ | inspect | podman-manifest-inspect(1) | Display a manifest | | | | list or image index. | +----------+-----------------------------+----------------------+ | push | podman-manifest-push(1) | Push a manifest list | | | | or image index to a | | | | registry. | +----------+-----------------------------+----------------------+ | remove | podman-manifest-remove(1) | Remove an item from | | | | a manifest list or | | | | image index. | +----------+-----------------------------+----------------------+ | rm | podman-manifest-rm(1) | Remove manifest list | | | | or image index from | | | | local storage. | +----------+-----------------------------+----------------------+ EXAMPLES Building a multi-arch manifest list from a Containerfile Assuming the Containerfile uses RUN instructions, the host needs a way to execute non-native binaries. Configuring this is beyond the scope of this example. Building a multi-arch manifest list shazam in parallel across 4-threads can be done like this: $ platarch=linux/amd64,linux/ppc64le,linux/arm64,linux/s390x $ podman build --jobs=4 --platform=$platarch --manifest shazam . Note: The --jobs argument is optional. Do not use the podman build com- mand's --tag (or -t) option when building a multi-arch manifest list. Assembling a multi-arch manifest from separately built images Assuming example.com/example/shazam:$arch images are built separately on other hosts and pushed to the example.com registry. They may be combined into a manifest list, and pushed using a simple loop: $ REPO=example.com/example/shazam $ podman manifest create $REPO:latest $ for IMGTAG in amd64 s390x ppc64le arm64; do podman manifest add $REPO:latest docker://$REPO:IMGTAG; done $ podman manifest push --all $REPO:latest Note: The add instruction argument order is <manifest> then <image>. Also, the --all push option is required to ensure all contents are pushed, not just the native platform/arch. Removing and tagging a manifest list before pushing Special care is needed when removing and pushing manifest lists, as opposed to the contents. You almost always want to use the manifest rm and mani- fest push --all subcommands. For example, a rename and push can be per- formed like this: $ podman tag localhost/shazam example.com/example/shazam $ podman manifest rm localhost/shazam $ podman manifest push --all example.com/example/shazam SEE ALSO podman(1), podman-manifest-add(1), podman-manifest-annotate(1), podman-man- ifest-create(1), podman-manifest-inspect(1), podman-manifest-push(1), pod- man-manifest-remove(1) podman-manifest(1)
NAME | SYNOPSIS | DESCRIPTION | SUBCOMMANDS | EXAMPLES | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=podman-manifest&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>
