hyf-backend/build-base-multiarch.sh

49 lines
1.4 KiB
Bash
Raw Permalink Normal View History

2026-01-31 11:12:32 +08:00
#!/bin/bash
# 构建多架构基础镜像脚本
# 支持 AMD64 (x86_64) 和 ARM64 (aarch64) 架构
set -e
echo "=========================================="
echo "构建多架构基础镜像"
echo "镜像名称: registry.t-aaron.com/hyf-backend-base:latest"
echo "支持架构: linux/amd64, linux/arm64"
echo "=========================================="
# 检查 Docker Buildx 是否可用
if ! docker buildx version &> /dev/null; then
echo "错误: Docker Buildx 不可用,请先安装 Docker Buildx"
exit 1
fi
# 创建或使用 buildx builder
BUILDER_NAME="multiarch-builder"
if ! docker buildx inspect $BUILDER_NAME &> /dev/null; then
echo "创建新的 builder: $BUILDER_NAME"
docker buildx create --name $BUILDER_NAME --use
else
echo "使用现有的 builder: $BUILDER_NAME"
docker buildx use $BUILDER_NAME
fi
# 启动 builder
docker buildx inspect --bootstrap
echo ""
echo "开始构建多架构镜像..."
echo ""
# 构建并推送多架构镜像
docker buildx build \
--platform linux/amd64,linux/arm64 \
-f Dockerfile.base \
-t registry.t-aaron.com/hyf-backend-base:latest \
--push \
.
echo ""
echo "=========================================="
echo "构建完成!"
echo "镜像已推送到: registry.t-aaron.com/hyf-backend-base:latest"
echo "支持的架构: AMD64, ARM64"
echo "=========================================="