[fix]:[FL-56][修复 Buildx 安装阶段构建错误]

Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
chengkai3
2026-06-09 00:33:42 +08:00
parent 2a10cc62d8
commit 9d497291e1
3 changed files with 42 additions and 6 deletions
+32
View File
@@ -0,0 +1,32 @@
## Work Log - 修复 Buildx 安装阶段访问 Docker Hub 超时(2026-06-09
- 背景:
- GitHub Actions run `27150975287``build-and-push` job 的 `安装 Buildx` 步骤失败,后续镜像构建与部署全部被跳过。
- check-run annotation 给出的精确错误为:
- `Head "https://registry-1.docker.io/v2/moby/buildkit/manifests/buildx-stable-1" ... Client.Timeout exceeded while awaiting headers`
- 根因不是仓库镜像构建脚本本身,而是 `docker/setup-buildx-action` 默认 `docker-container` 驱动在启动 BuildKit builder 时,需要先从 Docker Hub 拉 `moby/buildkit:buildx-stable-1`,受外网访问抖动影响直接超时。
- 本次处理:
- `.github/workflows/main.yml`
- `actions/checkout` 升级到 `v6`
- `docker/setup-buildx-action` 升级到 `v4`,并显式指定:
- `driver-opts: image=docker.m.daocloud.io/moby/buildkit:buildx-stable-1`
- 避免 Buildx 初始化再访问 Docker Hub 拉默认 BuildKit 镜像。
- `docker/login-action` 升级到 `v4`
- `docker/build-push-action` 升级到 `v7`
- 兼带收益:
- 消除了该次 run 中出现的 `Node.js 20 actions are deprecated` 预警里的旧版 `checkout/setup-buildx`
- 验证:
- 基线:
- GitHub Actions run `27150975287` 失败,且失败点固定在 `安装 Buildx`
- check-run annotation 可复核到 Docker Hub `moby/buildkit` 拉取超时。
- 修改后:
- `python3` 解析 `.github/workflows/main.yml` 通过。
- `actionlint` 校验变更前/变更后 workflow 均可解析,变更未引入 YAML / Actions 语法问题。
- `git diff --check -- .github/workflows/main.yml` 通过。
- 当前环境限制:
- 无法直接在本地实际执行 GitHub hosted runner 上的 `setup-buildx` 拉起流程,真实恢复效果需要依赖下一次 Actions 运行确认。
- 风险与关注点:
- 本次修复只绕开 BuildKit builder 镜像对 Docker Hub 的依赖;后续若 `Dockerfile` 里的基础镜像或 `docker build --pull` 仍指向不稳定上游,构建阶段仍可能出现其他网络相关失败。