fix: 修复阿里云容器镜像仓库认证失败问题
Some checks failed
部署后端服务 / 🚀 构建并部署 (push) Failing after 6m40s
部署后端服务 / 🔄 回滚部署 (push) Failing after 2s

- 增加 Docker 登录验证步骤
- 添加构建重试机制
- 优化认证流程稳定性
- 增强错误处理和日志输出

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
xujiang
2025-07-15 13:46:20 +08:00
parent ef6fa8f847
commit 7ea3d8142b

View File

@ -54,6 +54,16 @@ jobs:
registry: ${{ env.REGISTRY }} registry: ${{ env.REGISTRY }}
username: ${{ secrets.DOCKER_USERNAME }} username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }} password: ${{ secrets.DOCKER_PASSWORD }}
env:
DOCKER_CLI_EXPERIMENTAL: enabled
- name: 🔍 验证镜像仓库连接
run: |
echo "🔍 验证镜像仓库连接..."
docker pull hello-world:latest || true
docker logout ${{ env.REGISTRY }} || true
echo "🏷️ 重新登录镜像仓库..."
echo "${{ secrets.DOCKER_PASSWORD }}" | docker login ${{ env.REGISTRY }} --username "${{ secrets.DOCKER_USERNAME }}" --password-stdin
- name: 📝 提取元数据 - name: 📝 提取元数据
id: meta id: meta
@ -79,6 +89,23 @@ jobs:
cache-to: type=gha,mode=max cache-to: type=gha,mode=max
provenance: false provenance: false
sbom: false sbom: false
continue-on-error: true
id: build_push
- name: 🔄 重试构建和推送
if: steps.build_push.outcome == 'failure'
run: |
echo "⚠️ 构建推送失败等待10秒后重试..."
sleep 10
docker buildx build --push \
--platform linux/amd64 \
--tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ github.sha }} \
--tag ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest \
--cache-from type=gha \
--cache-to type=gha,mode=max \
--provenance=false \
--sbom=false \
./backend
- name: 📦 同步配置文件 - name: 📦 同步配置文件
run: | run: |