下面的Dockerfile一直在为错误的架构构建:
注意,我不能使用buildx,因为我需要为不同的架构安装特定的工具。
arm64/Dockerfile
# syntax=docker/dockerfile:1
# Download arm64 specifict tools
FROM golang:1.17.2 as build
WORKDIR /source
COPY src/go.mod ./
COPY src/go.sum ./
RUN go mod download
COPY src/ ./
RUN env GOOS=linux GOARCH=arm64 go build -o /appdocker build:
docker build \
--target build -t $CURRENT_REGISTRY/mycontainer:arm64 \
-f ./docker/$ARCH/Dockerfile .docker检查:
docker inspect manifest $CURRENT_REGISTRY/mycontainer:arm64输出:(应该是arm64而不是amd64)?
...
"Architecture": "amd64",
"Os": "linux",
"Size": 323727784,
"VirtualSize": 323727784,
...发布于 2021-10-26 17:08:37
只需在每个平台上使用docker buildx build,而不仅仅是build。然后使用docker docker manifest create。
https://stackoverflow.com/questions/69724561
复制相似问题