fix: docker buildx support for multiplatform build (#10983)
parent
ab49471f33
commit
81c907b4bf
@ -1,34 +0,0 @@ |
|||||||
FROM multiarch/qemu-user-static:x86_64-arm as qemu |
|
||||||
FROM arm32v7/alpine:3.12 |
|
||||||
|
|
||||||
LABEL maintainer="MinIO Inc <dev@min.io>" |
|
||||||
|
|
||||||
COPY --from=qemu /usr/bin/qemu-arm-static /usr/bin |
|
||||||
|
|
||||||
ENV MINIO_ACCESS_KEY_FILE=access_key \ |
|
||||||
MINIO_SECRET_KEY_FILE=secret_key \ |
|
||||||
MINIO_KMS_MASTER_KEY_FILE=kms_master_key \ |
|
||||||
MINIO_SSE_MASTER_KEY_FILE=sse_master_key \ |
|
||||||
MINIO_UPDATE_MINISIGN_PUBKEY="RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav" |
|
||||||
|
|
||||||
RUN \ |
|
||||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ |
|
||||||
apk update && apk add --no-cache ca-certificates 'curl>7.61.0' 'su-exec>=0.2' minisign && \ |
|
||||||
echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-arm/minio -o /usr/bin/minio && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-arm/minio.sha256sum -o /usr/bin/minio.sha256sum && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-arm/minio.minisig -o /usr/bin/minio.minisig && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/verify-minio.sh -o /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/docker-entrypoint.sh -o /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/minio && \ |
|
||||||
chmod +x /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q -O https://raw.githubusercontent.com/minio/minio/master/CREDITS |
|
||||||
|
|
||||||
EXPOSE 9000 |
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"] |
|
||||||
|
|
||||||
VOLUME ["/data"] |
|
||||||
|
|
||||||
CMD ["minio"] |
|
@ -1,35 +0,0 @@ |
|||||||
FROM multiarch/qemu-user-static:x86_64-aarch64 as qemu |
|
||||||
FROM arm64v8/alpine:3.12 |
|
||||||
|
|
||||||
LABEL maintainer="MinIO Inc <dev@min.io>" |
|
||||||
|
|
||||||
COPY --from=qemu /usr/bin/qemu-aarch64-static /usr/bin |
|
||||||
|
|
||||||
ENV MINIO_ACCESS_KEY_FILE=access_key \ |
|
||||||
MINIO_SECRET_KEY_FILE=secret_key \ |
|
||||||
MINIO_KMS_MASTER_KEY_FILE=kms_master_key \ |
|
||||||
MINIO_SSE_MASTER_KEY_FILE=sse_master_key \ |
|
||||||
MINIO_UPDATE_MINISIGN_PUBKEY="RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav" |
|
||||||
|
|
||||||
RUN \ |
|
||||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ |
|
||||||
apk update && apk add --no-cache ca-certificates 'curl>7.61.0' 'su-exec>=0.2' minisign && \ |
|
||||||
echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-arm64/minio -o /usr/bin/minio && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-arm64/minio.sha256sum -o /usr/bin/minio.sha256sum && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-arm64/minio.minisig -o /usr/bin/minio.minisig && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/verify-minio.sh -o /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/docker-entrypoint.sh -o /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/minio && \ |
|
||||||
chmod +x /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q -O https://raw.githubusercontent.com/minio/minio/master/CREDITS && \ |
|
||||||
/usr/bin/verify-minio.sh |
|
||||||
|
|
||||||
EXPOSE 9000 |
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"] |
|
||||||
|
|
||||||
VOLUME ["/data"] |
|
||||||
|
|
||||||
CMD ["minio"] |
|
@ -1,34 +0,0 @@ |
|||||||
FROM multiarch/qemu-user-static:x86_64-ppc64le as qemu |
|
||||||
FROM ppc64le/alpine:3.12 |
|
||||||
|
|
||||||
LABEL maintainer="MinIO Inc <dev@min.io>" |
|
||||||
|
|
||||||
COPY --from=qemu /usr/bin/qemu-ppc64le-static /usr/bin |
|
||||||
|
|
||||||
ENV MINIO_ACCESS_KEY_FILE=access_key \ |
|
||||||
MINIO_SECRET_KEY_FILE=secret_key \ |
|
||||||
MINIO_KMS_MASTER_KEY_FILE=kms_master_key \ |
|
||||||
MINIO_SSE_MASTER_KEY_FILE=sse_master_key \ |
|
||||||
MINIO_UPDATE_MINISIGN_PUBKEY="RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav" |
|
||||||
|
|
||||||
RUN \ |
|
||||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ |
|
||||||
apk update && apk add --no-cache ca-certificates 'curl>7.61.0' 'su-exec>=0.2' minisign && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-ppc64le/minio -o /usr/bin/minio && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-ppc64le/minio.sha256sum -o /usr/bin/minio.sha256sum && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-ppc64le/minio.minisig -o /usr/bin/minio.minisig && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/verify-minio.sh -o /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/docker-entrypoint.sh -o /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/minio && \ |
|
||||||
chmod +x /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q -O https://raw.githubusercontent.com/minio/minio/master/CREDITS && \ |
|
||||||
/usr/bin/verify-minio.sh |
|
||||||
|
|
||||||
EXPOSE 9000 |
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"] |
|
||||||
|
|
||||||
VOLUME ["/data"] |
|
||||||
|
|
||||||
CMD ["minio"] |
|
@ -1,34 +0,0 @@ |
|||||||
FROM multiarch/qemu-user-static:x86_64-s390x as qemu |
|
||||||
FROM s390x/alpine:3.12 |
|
||||||
|
|
||||||
LABEL maintainer="MinIO Inc <dev@min.io>" |
|
||||||
|
|
||||||
COPY --from=qemu /usr/bin/qemu-s390x-static /usr/bin |
|
||||||
|
|
||||||
ENV MINIO_ACCESS_KEY_FILE=access_key \ |
|
||||||
MINIO_SECRET_KEY_FILE=secret_key \ |
|
||||||
MINIO_KMS_MASTER_KEY_FILE=kms_master_key \ |
|
||||||
MINIO_SSE_MASTER_KEY_FILE=sse_master_key \ |
|
||||||
MINIO_UPDATE_MINISIGN_PUBKEY="RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav" |
|
||||||
|
|
||||||
RUN \ |
|
||||||
echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories && \ |
|
||||||
apk update && apk add --no-cache ca-certificates 'curl>7.61.0' 'su-exec>=0.2' minisign && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-s390x/minio -o /usr/bin/minio && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-s390x/minio.sha256sum -o /usr/bin/minio.sha256sum && \ |
|
||||||
curl -s -q https://dl.min.io/server/minio/release/linux-s390x/minio.minisig -o /usr/bin/minio.minisig && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/verify-minio.sh -o /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q https://raw.githubusercontent.com/minio/minio/master/dockerscripts/docker-entrypoint.sh -o /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/minio && \ |
|
||||||
chmod +x /usr/bin/docker-entrypoint.sh && \ |
|
||||||
chmod +x /usr/bin/verify-minio.sh && \ |
|
||||||
curl -s -q -O https://raw.githubusercontent.com/minio/minio/master/CREDITS && \ |
|
||||||
/usr/bin/verify-minio.sh |
|
||||||
|
|
||||||
EXPOSE 9000 |
|
||||||
|
|
||||||
ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"] |
|
||||||
|
|
||||||
VOLUME ["/data"] |
|
||||||
|
|
||||||
CMD ["minio"] |
|
@ -0,0 +1,17 @@ |
|||||||
|
#!/bin/bash |
||||||
|
|
||||||
|
set -x |
||||||
|
|
||||||
|
sudo sysctl net.ipv6.conf.wlp59s0.disable_ipv6=1 |
||||||
|
|
||||||
|
release=$(git describe --abbrev=0 --tags) |
||||||
|
sudo docker buildx build --push --no-cache -t "minio/minio:latest" \ |
||||||
|
--platform=linux/arm,linux/arm64,linux/amd64,linux/ppc64le,linux/s390x \ |
||||||
|
-f Dockerfile.release . |
||||||
|
|
||||||
|
sudo docker buildx build --push -t "minio/minio:${release}" \ |
||||||
|
--platform=linux/arm,linux/arm64,linux/amd64,linux/ppc64le,linux/s390x \ |
||||||
|
-f Dockerfile.release . |
||||||
|
|
||||||
|
sudo sysctl net.ipv6.conf.wlp59s0.disable_ipv6=0 |
||||||
|
|
Loading…
Reference in new issue