微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Docker Build ls中未显示Docker BuildX图像

如何解决Docker Build ls中未显示Docker BuildX图像

我目前正在尝试使用BuildKit / BuildX构建多平台映像(x86_64,arm64,armv7,armv6),它似乎可以成功构建,但是我似乎找不到该图像所在的位置。它没有显示出与我先前针对x86_64生成的版本相比发生的变化,当尝试将其 docker push 放入我的仓库时,它表示所有层均已存在,并且仅存在一个平台。我用来生成映像的命令是:

docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 -m 5120M --no-cache --progress auto --pull -t frostedflakez/PHP-MysqL-webserver:PHP-latest-7.4 --push ./

构建后,我从终端获得的最后一行是:

 => exporting to image                                                                                                                                                     264.6s
 => => exporting layers                                                                                                                                                     46.1s
 => => exporting manifest sha256:585ca6c82887a6f0178007c905f11c7fbde5e6220b9c451892c40d2844b43403                                                                            0.0s
 => => exporting config sha256:0923c92918eb6fad44396000250f11946f38f6e1eb0d78ec916a794f395f526a                                                                              0.0s
 => => exporting manifest sha256:0b9fceb5f74bca71942ce3e1aa5fdf5ed0453e16aff53bec5d22a9c15233fbc2                                                                            0.0s
 => => exporting config sha256:ba19e5dab51b74549775cfbc1b0ce3961342a2c859050d98e68b6130ee276e91                                                                              0.0s
 => => exporting manifest sha256:540ef45e6b3cfec74af6a4c641b70009587b19b1fe5702338a9b93b409136b28                                                                            0.0s
 => => exporting config sha256:7be378e1831fa4bd00f1595bf4d511286c600d21ee245db567115fb85fdd24cc                                                                              0.0s
 => => exporting manifest sha256:9a339a6283db4ffe56c735d85306e87261aebe8a7f696984da67720f24d4ab73                                                                            0.0s
 => => exporting config sha256:e54fc6d23c38d1a119ba6781b868643d2ede87a8f5fe0e55a5874b140fbe235e                                                                              0.0s
 => => exporting manifest list sha256:d4ec48c69d17df29e5f8521a2ede6dd83cadc8868d2829621fd15dc0582916c2                                                                       0.0s
 => => pushing layers                                                                                                                                                      206.3s
 => => pushing manifest for docker.io/frostedflakez/PHP-MysqL-webserver:PHP-latest-7.4                                                                                      12.0s

解决方法

将图像直接推送到注册表:

 => => pushing manifest for docker.io/frostedflakez/php-mysql-webserver:php-latest-7.4       12.0s

不可能将多平台图像推送到docker引擎。相反,引擎中的所有映像都是单一平台,您将多平台映像直接推送到选定的注册表。您可以提取图像以获取平台的版本:

docker image pull frostedflakez/php-mysql-webserver:php-latest-7.4

图像本身位于构建器缓存中,但是无法从引擎访问。您可以使用以下方法查看该缓存大小:

docker system df

您可以使用以下命令清除此缓存:

docker builder prune

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?