4.9. 构建多架构镜像
先决条件
container-tools元数据软件包已安装。-
为您要支持的每个架构创建
Containerfiles。 为每个架构构建镜像。例如:
podman build --platform linux/arm64,linux/amd64 --manifest <registry>/<image> .
$ podman build --platform linux/arm64,linux/amd64 --manifest <registry>/<image> .Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
--platform linux/arm64,linux/amd64选项指定构建容器镜像的目标平台。 -
--manifest <registry>/<image>选项创建一个具有指定名称的清单列表,即<registry>/<image>,并将新构建的镜像添加到其中。清单列表是镜像清单的一个集合,每个针对不同的架构。
-
将清单列表推送到注册中心:
podman manifest push <registry>/<image>
$ podman manifest push <registry>/<image>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 此清单列表充当拉取多架构容器的单个入口点。
-
为您要支持的每个架构创建
因此,您可以根据单个清单列表,为平台拉取合适的容器镜像。
您还可以使用 podman manifest remove <manifest_list> <digest_ID> 命令从清单列表中删除条目,其中 <digest_ID> 是容器镜像的 SHA-256 校验和。例如:podman manifest remove <registry>/<image> sha256:cb8a924afdf… 。
验证
显示清单列表:
podman manifest inspect <registry>/<image>
$ podman manifest inspect <registry>/<image>Copy to Clipboard Copied! Toggle word wrap Toggle overflow