#!/bin/bash # Build ARM64-only image for Raspberry Pi 4 # Faster build when you only need ARM64 set -e IMAGE_NAME="${IMAGE_NAME:-easylinux/web-gateway}" IMAGE_TAG="${IMAGE_TAG:-latest}" echo "============================================" echo "Building ARM64 Image for Raspberry Pi 4" echo "============================================" echo "Image: ${IMAGE_NAME}:${IMAGE_TAG}" echo "Platform: linux/arm64" echo "============================================" # Check if buildx is available if ! docker buildx version >/dev/null 2>&1; then echo "Error: docker buildx not found. Please install Docker Buildx." exit 1 fi # Create builder if needed if ! docker buildx ls | grep -q arm64-builder; then echo "Creating arm64-builder..." docker buildx create --name arm64-builder --use --bootstrap else echo "Using existing arm64-builder..." docker buildx use arm64-builder fi # Build ARM64 image echo "Building for ARM64..." docker buildx build \ --platform linux/arm64 \ --tag "${IMAGE_NAME}:${IMAGE_TAG}" \ --load \ . echo "============================================" echo "✅ ARM64 image built successfully!" echo "============================================" echo "Image: ${IMAGE_NAME}:${IMAGE_TAG}" echo "" echo "Push to registry:" echo " docker push ${IMAGE_NAME}:${IMAGE_TAG}" echo "" echo "Or save as tar:" echo " docker save ${IMAGE_NAME}:${IMAGE_TAG} | gzip > web-gateway-arm64.tar.gz"