From fdda1c29759f7f55858a27a9af7c2ea4e9bcd8ba Mon Sep 17 00:00:00 2001 From: micha Date: Fri, 23 Dec 2022 13:51:29 +0000 Subject: [PATCH] =?UTF-8?q?=E2=80=9Edrone/ContainerImageDocker.yml?= =?UTF-8?q?=E2=80=9C=20=C3=A4ndern?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Baue Docker Container für mehrere Architekturen, falls DOCKER_MULTI_ARCH wahr ist. --- drone/ContainerImageDocker.yml | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/drone/ContainerImageDocker.yml b/drone/ContainerImageDocker.yml index 1558c0f..70e3a36 100644 --- a/drone/ContainerImageDocker.yml +++ b/drone/ContainerImageDocker.yml @@ -41,6 +41,7 @@ DEBUG_STEP: "false" PUSH_TAGS: "true" DOCKER_BUILDKIT: 1 + DOCKER_MULTI_ARCH: "false" commands: - &ContainerImageDockerCommands | @@ -197,11 +198,30 @@ sleep 2 done - # start build - echo $ALL_ARGS | xargs docker build + # prepare multiarch build + if [[ "$DOCKER_MULTI_ARCH" == "true" ]]; then + # https://github.com/docker/buildx/issues/495#issuecomment-761562905 + docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + docker buildx create --name multiarch --driver docker-container --use + docker buildx inspect --bootstrap + fi + + # multiarch build + if [[ "$DOCKER_MULTI_ARCH" == "true" ]]; then + if [[ "$PUSH_TAGS" == "true" ]]; then + echo $ALL_ARGS | xargs docker buildx build --platform linux/amd64,linux/arm64 --push + else + echo $ALL_ARGS | xargs docker buildx build --platform linux/amd64,linux/arm64 + fi + fi + + # normal builds + if [[ "$DOCKER_MULTI_ARCH" == "false" ]]; then + echo $ALL_ARGS | xargs docker build + fi # push tags - if [[ "$PUSH_TAGS" == "true" ]]; then + if [[ "$DOCKER_MULTI_ARCH" == "false" ]] && [[ "$PUSH_TAGS" == "true" ]]; then IFS=" " echo "IMAGE_DESTS_PUSH=$IMAGE_DESTS_PUSH" for TAG in $IMAGE_DESTS_PUSH; do