#!/bin/bash # Docker构建测试脚本 echo "🧪 测试Docker构建环境..." echo "" echo "1. 检查Docker版本:" docker --version echo "" echo "2. 检查Docker Buildx:" docker buildx version echo "" echo "3. 检查Docker daemon配置:" if [ -f /etc/docker/daemon.json ]; then echo "✅ daemon.json存在:" cat /etc/docker/daemon.json else echo "⚠️ daemon.json不存在,建议运行 setup-docker-mirrors.sh" fi echo "" echo "4. 检查Docker镜像加速器:" docker info | grep -A 5 "Registry Mirrors" || echo "❌ 未配置镜像加速器" echo "" echo "5. 测试基础镜像拉取:" echo "正在测试拉取 hello-world 镜像..." if docker pull hello-world; then echo "✅ 基础镜像拉取成功" docker run --rm hello-world else echo "❌ 基础镜像拉取失败" fi echo "" echo "6. 测试 amazoncorretto 镜像拉取:" echo "正在测试拉取 amazoncorretto:17-alpine-jdk 镜像..." if timeout 300 docker pull amazoncorretto:17-alpine-jdk; then echo "✅ amazoncorretto镜像拉取成功" else echo "❌ amazoncorretto镜像拉取失败或超时" fi echo "" echo "7. 检查Buildx构建器:" if docker buildx inspect jenkins-builder >/dev/null 2>&1; then echo "✅ jenkins-builder构建器存在" docker buildx inspect jenkins-builder else echo "⚠️ jenkins-builder构建器不存在,将创建新的" docker buildx create --name jenkins-builder --use --bootstrap fi echo "" echo "8. 测试简单构建:" cat > /tmp/test-dockerfile << 'EOF' FROM hello-world LABEL test=true EOF if docker buildx build --platform linux/amd64 --load -t test-build -f /tmp/test-dockerfile /tmp; then echo "✅ 简单构建测试成功" docker rmi test-build >/dev/null 2>&1 else echo "❌ 简单构建测试失败" fi rm -f /tmp/test-dockerfile echo "" echo "🏁 测试完成!"