--- kind: pipeline type: docker name: default environment: DOCKER_CLI_EXPERIMENTAL: enabled platform: os: linux arch: amd64 services: - name: dind image: docker:dind command: - "dockerd" - "--experimental" - "--ipv6" - "--fixed-cidr-v6=fd3a:3ea5:35c6:f876::/64" privileged: true volumes: - name: docker_socket path: /var/run volumes: - name: docker_socket temp: {} steps: - name: build image: docker:latest commands: - |- case $(uname -a) in *x86_64*) export ARCH="amd64" docker run --rm --privileged multiarch/qemu-user-static --reset -p yes ;; *aarch64*) export ARCH="arm64" ;; *) export ARCH="unknown" ;; esac - |- export BUILDX_URL=$( \ wget -q -O - \ https://api.github.com/repos/docker/buildx/releases/latest \ | grep "browser_download_url.*linux-$ARCH" \ | cut -d: -f2,3 \ | tr -d \" \ ) - mkdir -p ~/.docker/cli-plugins - wget -O ~/.docker/cli-plugins/docker-buildx $BUILDX_URL - chmod a+x ~/.docker/cli-plugins/docker-buildx - docker version - docker buildx version - |- echo -n $REGISTRY_PASS \ | docker login -u $REGISTRY_USER --password-stdin $REGISTRY_HOST - docker buildx create --name multiarch --use # - |- # docker buildx build \ # --add-host $REGISTRY_HOST:$(nslookup -type=a $REGISTRY_HOST | grep -v ':53' | grep 'Address:' | awk '{print $2}') \ # --platform linux/amd64,linux/arm64 \ # --output type=image,push=true \ # --progress tty \ # --build-arg TAG=$DRONE_TAG \ # -t $REGISTRY_HOST/$IMAGE:$DRONE_TAG \ # -t $REGISTRY_HOST/$IMAGE:latest \ # . - |- docker buildx build \ --platform linux/amd64,linux/arm64 \ --output type=image,push=true \ --progress tty \ -t $REGISTRY_HOST/$IMAGE:latest \ . volumes: - name: docker_socket path: /var/run environment: IMAGE: protonmail-bridge REGISTRY_HOST: registry.thegibsonhome.net REGISTRY_USER: from_secret: registry_username REGISTRY_PASS: from_secret: registry_password #trigger: # event: # - tag