【发布时间】:2017-12-05 03:18:32
【问题描述】:
我正在尝试构建一个 ARM (arm32v7) 容器,但使用的是 x86_64 主机。虽然我知道有一些很酷的东西,比如 Resin 使用 Qemu 恶作剧,Multiarch 用于交叉构建通用容器,但我有一个小问题:我正在尝试构建的容器从多架构开始,所以 Docker总是在 FROM 指令中选择 x86 图像。
我想在 x86 主机上从 Multi-arch Rust image 构建一个 ARM 容器。问题是,我找不到任何文档来明确说我想从 ARM 容器开始并从中构建,而不是 x86 容器。此外,图像上的标签不会消除歧义,因此我不能使用它们来选择起始容器。
我尝试编辑 /etc/docker/daemon.json 文件以包含:
{
"labels": [ "os=linux", "arch=arm32v7" ],
"experimental": true
}
但这根本没有帮助。 docker pull 仍然检索 x86 图像。所有这一切的目的是提高最终在 Raspberry Pi 上运行的容器的编译时间;就目前而言,编译时间非常慢。
有什么方法可以明确表示我想从 ARM 映像开始构建?
【问题讨论】:
-
我认为暂时没有办法这样做。我也在为此苦苦挣扎并最终使用真实设备:blog.slucas.fr/blog/docker-multiarch-manifest-hub-2
标签: docker arm raspberry-pi3