|
| 1 | + |
| 2 | +# |
| 3 | +TAG=v3.0.0 |
| 4 | +IMGPREFIX=radondb/ |
| 5 | +builder_exists=$(docker buildx ls | awk '{if ($1=="multi-platform") print $1}') |
| 6 | +if [ "$builder_exists" ]; then |
| 7 | + docker buildx rm multi-platform |
| 8 | + docker run --rm --privileged multiarch/qemu-user-static --reset -p yes |
| 9 | +fi |
| 10 | +docker buildx create --use --name multi-platform --platform=linux/amd64,linux/arm64 > /dev/null |
| 11 | + |
| 12 | +IMGAMD=${IMGPREFIX}mysql-operator-amd64:${TAG} |
| 13 | +IMGARM=${IMGPREFIX}mysql-operator-arm64:${TAG} |
| 14 | +GO_PROXY=on |
| 15 | +DOCKER_BUILDKIT=1 docker build --build-arg GO_PROXY=${GO_PROXY} -t ${IMGAMD} . |
| 16 | + |
| 17 | +docker buildx create --use --name multi-platform --driver docker-container --platform=linux/amd64,linux/arm64 --config /root/radondb-mysql-kubernetes/buildkitd.toml > /dev/null |
| 18 | +docker buildx build --build-arg GO_PROXY=on --platform linux/arm64 -t $IMGARM -o type=docker . |
| 19 | +docker push ${IMGAMD} |
| 20 | +docker push ${IMGARM} |
| 21 | +docker manifest create ${IMGPREFIX}mysql-operator:${TAG} ${IMGAMD} ${IMGARM} |
| 22 | +docker manifest push --purge ${IMGPREFIX}mysql-operator:${TAG} |
| 23 | + |
| 24 | + |
| 25 | +XENON_IMGAMD=${IMGPREFIX}xenon-amd64:${TAG} |
| 26 | +XENON_IMGARM=${IMGPREFIX}xenon-arm64:${TAG} |
| 27 | +GO_PROXY=on |
| 28 | +DOCKER_BUILDKIT=1 docker build -f build/xenon/Dockerfile --build-arg GO_PROXY=${GO_PROXY} -t ${XENON_IMGAMD} . |
| 29 | +#docker buildx create --use --name multi-platform --driver docker-container --platform=linux/amd64,linux/arm64 --config /root/radondb-mysql-kubernetes/buildkitd.toml > /dev/null |
| 30 | +docker buildx build --build-arg GO_PROXY=on --platform linux/arm64 -f build/xenon/Dockerfile.arm64 --build-arg GO_PROXY=${GO_PROXY} -t ${XENON_IMGARM} -o type=docker . |
| 31 | +docker push $XENON_IMGAMD |
| 32 | +docker push $XENON_IMGARM |
| 33 | +docker manifest create ${IMGPREFIX}xenon:${TAG} ${XENON_IMGAMD} ${XENON_IMGARM} |
| 34 | +docker manifest push --purge ${IMGPREFIX}xenon:${TAG} |
| 35 | + |
| 36 | + |
| 37 | + |
| 38 | + |
| 39 | + |
| 40 | +SIDECAR57_IMGAMD=${IMGPREFIX}mysql57-sidecar-amd64:${TAG} |
| 41 | +SIDECAR80_IMGAMD=${IMGPREFIX}mysql80-sidecar-amd64:${TAG} |
| 42 | +SIDECAR57_IMGARM=${IMGPREFIX}mysql57-sidecar-arm64:${TAG} |
| 43 | +SIDECAR80_IMGARM=${IMGPREFIX}mysql80-sidecar-arm64:${TAG} |
| 44 | +GO_PROXY=on |
| 45 | +DOCKER_BUILDKIT=1 docker build --build-arg XTRABACKUP_PKG=percona-xtrabackup-80 --build-arg GO_PROXY=${GO_PROXY} -f Dockerfile.sidecar -t ${SIDECAR80_IMGAMD} . |
| 46 | +DOCKER_BUILDKIT=1 docker build -f Dockerfile.sidecar --build-arg GO_PROXY=${GO_PROXY} -t ${SIDECAR57_IMGAMD} . |
| 47 | +docker buildx build --build-arg GO_PROXY=on --platform linux/arm64 --build-arg XTRABACKUP_PKG=percona-xtrabackup-80 --build-arg GO_PROXY=${GO_PROXY} -f Dockerfile.sidecar-arm64 -t ${SIDECAR80_IMGARM} -o type=docker . |
| 48 | +docker buildx build --build-arg GO_PROXY=on --platform linux/arm64 -f Dockerfile.sidecar2 --build-arg GO_PROXY=${GO_PROXY} -t ${SIDECAR57_IMGARM} -o type=docker . |
| 49 | +docker push ${SIDECAR57_IMGAMD} |
| 50 | +docker push ${SIDECAR80_IMGAMD} |
| 51 | +docker push ${SIDECAR57_IMGARM} |
| 52 | +docker push ${SIDECAR80_IMGARM} |
| 53 | +docker manifest create ${IMGPREFIX}mysql57-sidecar:${TAG} ${SIDECAR57_IMGAMD} ${SIDECAR57_IMGARM} |
| 54 | +docker manifest push --purge ${IMGPREFIX}mysql57-sidecar:${TAG} |
| 55 | +docker manifest create ${IMGPREFIX}mysql80-sidecar:${TAG} ${SIDECAR80_IMGAMD} ${SIDECAR80_IMGARM} |
| 56 | +docker manifest push --purge ${IMGPREFIX}mysql80-sidecar:${TAG} |
| 57 | + |
| 58 | + |
| 59 | + |
0 commit comments