根据Gemini建议的优化方案: **Dockerfile修复**: - 修复FROM语句大小写警告 (as -> AS) - 修复Maven settings.xml中的XML标签错误 (<n> -> <name>) - 优化健康检查端点支持Actuator标准 - 统一使用mvnw执行命令 **Jenkinsfile优化**: - 简化Docker buildx命令,移除可能导致网络问题的参数 - 添加备用构建方案:Buildx失败时自动切换到传统Docker构建 - 移除复杂的缓存配置,先确保基本构建正常 - 优化错误处理和重试逻辑 - 减少重试次数避免无谓等待 **工具脚本**: - setup-docker-mirrors.sh: 配置Docker镜像加速器 - test-docker-build.sh: 测试Docker构建环境 - 包含网络优化和构建器验证 **主要解决问题**: - Docker Hub网络超时问题 - Buildx配置复杂性 - 构建失败时的降级策略 下一步建议在服务器运行 scripts/setup-docker-mirrors.sh 配置镜像加速器
55 lines
1.5 KiB
Bash
55 lines
1.5 KiB
Bash
#!/bin/bash
|
||
# Docker镜像加速器配置脚本
|
||
# 用于解决从Docker Hub拉取镜像超时的问题
|
||
|
||
echo "🔧 配置Docker镜像加速器..."
|
||
|
||
# 创建docker配置目录
|
||
sudo mkdir -p /etc/docker
|
||
|
||
# 备份原有配置(如果存在)
|
||
if [ -f /etc/docker/daemon.json ]; then
|
||
sudo cp /etc/docker/daemon.json /etc/docker/daemon.json.backup
|
||
echo "✅ 已备份原有配置文件"
|
||
fi
|
||
|
||
# 配置多个镜像加速器(提高可用性)
|
||
cat << 'EOF' | sudo tee /etc/docker/daemon.json
|
||
{
|
||
"registry-mirrors": [
|
||
"https://mirror.ccs.tencentyun.com",
|
||
"https://dockerhub.azk8s.cn",
|
||
"https://reg-mirror.qiniu.com",
|
||
"https://hub-mirror.c.163.com"
|
||
],
|
||
"exec-opts": ["native.cgroupdriver=systemd"],
|
||
"log-driver": "json-file",
|
||
"log-opts": {
|
||
"max-size": "100m",
|
||
"max-file": "3"
|
||
},
|
||
"storage-driver": "overlay2",
|
||
"insecure-registries": [],
|
||
"live-restore": true
|
||
}
|
||
EOF
|
||
|
||
echo "✅ Docker配置文件已更新"
|
||
|
||
# 重启Docker服务
|
||
echo "🔄 重启Docker服务..."
|
||
sudo systemctl daemon-reload
|
||
sudo systemctl restart docker
|
||
|
||
# 验证配置
|
||
echo "🔍 验证Docker配置..."
|
||
sudo systemctl status docker --no-pager -l
|
||
docker info | grep -A 10 "Registry Mirrors"
|
||
|
||
echo "✅ Docker镜像加速器配置完成!"
|
||
echo "📝 配置的镜像源:"
|
||
echo " - 腾讯云: https://mirror.ccs.tencentyun.com"
|
||
echo " - Azure中国: https://dockerhub.azk8s.cn"
|
||
echo " - 七牛云: https://reg-mirror.qiniu.com"
|
||
echo " - 网易: https://hub-mirror.c.163.com"
|