From a39680dbca7928769649d74741b11c90da58c6b5 Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Wed, 22 Jul 2026 10:47:07 +0800 Subject: [PATCH 1/4] =?UTF-8?q?fix:=20Worker=E6=9E=84=E5=BB=BAfallback?= =?UTF-8?q?=E6=94=B9=E7=94=A8buildx=EF=BC=8C=E4=BF=AE=E5=A4=8DDooD?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E4=B8=8B=E5=9F=BA=E7=A1=80=E9=95=9C=E5=83=8F?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/ci-pipeline.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci-pipeline.yml b/.gitea/workflows/ci-pipeline.yml index f86aebc26..19dc59e1c 100755 --- a/.gitea/workflows/ci-pipeline.yml +++ b/.gitea/workflows/ci-pipeline.yml @@ -641,11 +641,19 @@ jobs: # 构建builder基础镜像 echo "构建 worker-base-builder..." - docker build -f infra/docker/worker-base-builder.Dockerfile -t "$BASE_BUILDER" . + # 用buildx docker-container驱动构建(兼容DooD模式:普通docker build看不到容器内文件) + BUILDER_NAME="ci-pr-builder-${GITHUB_RUN_ID:-local}" + if ! docker buildx inspect "$BUILDER_NAME" > /dev/null 2>&1; then + docker buildx create --use --name "$BUILDER_NAME" --driver docker-container + else + docker buildx use "$BUILDER_NAME" + fi + docker buildx inspect --bootstrap > /dev/null 2>&1 + docker buildx build --load -f infra/docker/worker-base-builder.Dockerfile -t "$BASE_BUILDER" . # 构建runtime基础镜像 echo "构建 worker-base-runtime..." - docker build -f infra/docker/worker-base-runtime.Dockerfile -t "$BASE_RUNTIME" . + docker buildx build --load -f infra/docker/worker-base-runtime.Dockerfile -t "$BASE_RUNTIME" . echo "fallback=true" >> $GITHUB_OUTPUT echo "基础镜像本地构建完成" -- 2.54.0 From 61f0601cd4d2a7fb5872b65135e6784ed7b005fe Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Wed, 22 Jul 2026 10:50:37 +0800 Subject: [PATCH 2/4] chore: trigger CI for worker dood fallback fix --- scripts/ci/step_timer_start.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/ci/step_timer_start.sh b/scripts/ci/step_timer_start.sh index 503143a6d..b53accb82 100755 --- a/scripts/ci/step_timer_start.sh +++ b/scripts/ci/step_timer_start.sh @@ -2,4 +2,5 @@ # CI 公共步骤:Job 开始计时 echo "JOB_START_TIME=$(date +%s)" >> $GITHUB_ENV echo "Job started at $(date)" -# trigger CI run for PR validation \ No newline at end of file +# trigger CI run for PR validation +# trigger CI - worker dood fallback fix test \ No newline at end of file -- 2.54.0 From 7a1f7c89b5949d67a545e3a8b2b63958c8dc630f Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Wed, 22 Jul 2026 11:01:13 +0800 Subject: [PATCH 3/4] =?UTF-8?q?fix:=20pre-build=20fallback=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=E5=A2=9E=E5=8A=A03=E6=AC=A1=E9=87=8D=E8=AF=95?= =?UTF-8?q?=EF=BC=8C=E5=BA=94=E5=AF=B9buildx=E5=AE=B9=E5=99=A8=E5=81=B6?= =?UTF-8?q?=E5=8F=91=E4=B8=8D=E7=A8=B3=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/ci-pipeline.yml | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/ci-pipeline.yml b/.gitea/workflows/ci-pipeline.yml index 19dc59e1c..12c247b0b 100755 --- a/.gitea/workflows/ci-pipeline.yml +++ b/.gitea/workflows/ci-pipeline.yml @@ -649,11 +649,32 @@ jobs: docker buildx use "$BUILDER_NAME" fi docker buildx inspect --bootstrap > /dev/null 2>&1 - docker buildx build --load -f infra/docker/worker-base-builder.Dockerfile -t "$BASE_BUILDER" . + + # 构建builder基础镜像(带重试,buildx容器偶发不稳定) + echo "构建 worker-base-builder..." + for attempt in 1 2 3; do + if docker buildx build --load -f infra/docker/worker-base-builder.Dockerfile -t "$BASE_BUILDER" .; then + echo "worker-base-builder 构建成功" + break + fi + echo "worker-base-builder 构建失败,重试 $attempt/3..." + docker buildx rm "$BUILDER_NAME" 2>/dev/null || true + docker buildx create --use --name "$BUILDER_NAME" --driver docker-container + sleep 3 + done # 构建runtime基础镜像 echo "构建 worker-base-runtime..." - docker buildx build --load -f infra/docker/worker-base-runtime.Dockerfile -t "$BASE_RUNTIME" . + for attempt in 1 2 3; do + if docker buildx build --load -f infra/docker/worker-base-runtime.Dockerfile -t "$BASE_RUNTIME" .; then + echo "worker-base-runtime 构建成功" + break + fi + echo "worker-base-runtime 构建失败,重试 $attempt/3..." + docker buildx rm "$BUILDER_NAME" 2>/dev/null || true + docker buildx create --use --name "$BUILDER_NAME" --driver docker-container + sleep 3 + done echo "fallback=true" >> $GITHUB_OUTPUT echo "基础镜像本地构建完成" -- 2.54.0 From ed061aae3efcec29b5cf49b86412959cf6aac105 Mon Sep 17 00:00:00 2001 From: xiaoxia Date: Wed, 22 Jul 2026 11:20:28 +0800 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20worker=E5=9F=BA=E7=A1=80=E9=95=9C?= =?UTF-8?q?=E5=83=8F=E6=94=B9=E7=94=A8=E9=98=BF=E9=87=8C=E4=BA=91ACR?= =?UTF-8?q?=EF=BC=8C=E6=8F=90=E5=8D=87pull=E9=80=9F=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- infra/docker/worker.Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/infra/docker/worker.Dockerfile b/infra/docker/worker.Dockerfile index d00043021..beb15a399 100755 --- a/infra/docker/worker.Dockerfile +++ b/infra/docker/worker.Dockerfile @@ -11,7 +11,7 @@ # - requirements-base.txt 全部依赖 # - requirements-worker.txt 全部依赖 (numpy/scipy/opencv) # - 预strip的.so文件 -FROM git.xiaoxiajianji.com/xiaoxia-saas/worker-base-builder:latest AS builder +FROM xiaoxia-registry.cn-hangzhou.cr.aliyuncs.com/xiaoxiakeji/worker-base-builder:latest AS builder ENV PATH="/opt/venv/bin:$PATH" @@ -33,7 +33,7 @@ RUN find /opt/venv -type d -name "__pycache__" -exec rm -rf {} + 2>/dev/null; \ # 从预构建的runtime基础镜像开始,已经包含: # - ffmpeg # - libglib2.0-0 -FROM git.xiaoxiajianji.com/xiaoxia-saas/worker-base-runtime:latest AS runtime +FROM xiaoxia-registry.cn-hangzhou.cr.aliyuncs.com/xiaoxiakeji/worker-base-runtime:latest AS runtime # 构建参数:版本号 ARG APP_VERSION=dev -- 2.54.0