mirror of
https://github.com/bluewave-labs/Checkmate.git
synced 2026-01-06 09:49:39 -06:00
45 lines
1.1 KiB
Bash
Executable File
45 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e # Exit on error
|
|
|
|
# Change directory to root Server directory for correct Docker Context
|
|
cd "$(dirname "$0")"
|
|
cd ../..
|
|
|
|
# Ensure buildx builder exists and is used
|
|
if ! docker buildx inspect mybuilder &>/dev/null; then
|
|
docker buildx create --name mybuilder --use
|
|
else
|
|
docker buildx use mybuilder
|
|
fi
|
|
|
|
# Define service names and Dockerfiles
|
|
services=("mono_server_arm")
|
|
dockerfiles=(
|
|
"./docker/dist-arm/server.Dockerfile"
|
|
)
|
|
|
|
# Static image name for GitHub Container Registry (GHCR)
|
|
image="ghcr.io/bluewave-labs/checkmate:backend-dist-multi-arch"
|
|
platforms="linux/amd64,linux/arm64"
|
|
repo_url="https://github.com/bluewave-labs/checkmate"
|
|
|
|
# Loop through each service and build
|
|
for i in "${!services[@]}"; do
|
|
service="${services[$i]}"
|
|
dockerfile="${dockerfiles[$i]}"
|
|
|
|
echo "🚀 Building multi-arch image for $service..."
|
|
docker buildx build \
|
|
--platform "$platforms" \
|
|
-f "$dockerfile" \
|
|
-t "$image" \
|
|
--label "org.opencontainers.image.source=$repo_url" \
|
|
--push \
|
|
.
|
|
|
|
echo "✅ $image pushed for platforms: $platforms"
|
|
done
|
|
|
|
echo "🎉 All multi-arch images built and pushed successfully"
|