Dockerfile文档中提到,可以在FROM
指令中使用--platform
选项:
FROM [--platform=<platform>] <image> [AS <name>]
在我的dockerfile中,我有以下语句:
ARG arch
FROM --platform linux/${arch} bounz/hgbe.base
bounz/hgbe.base
镜像有两个操作系统/架构变体:linux/amd64
和linux/arm/v7
。
但是,尝试使用此dockerfile构建镜像时会出现错误:
$ docker build -f hgbe.dockerfile --build-arg arch=amd64 -t bounz/hgbetest:amd64-0.1 .
Sending build context to Docker daemon 12.29kB
Error response from daemon: Dockerfile parse error line 2: FROM requires either one or three arguments
我做错了什么?
如果使用docker buildx
构建基础镜像,是否有一种方法可以引用特定平台的基础镜像?
docker run
命令中--platform的工作方式。这个选项更像是“源平台”,如果你指定了一个错误摘要的镜像,它会产生错误。 - undefined