From 5e71d576a30387faac61bb9ea08609f39d80b16c Mon Sep 17 00:00:00 2001 From: hotwa Date: Tue, 30 Sep 2025 16:22:35 +0800 Subject: [PATCH] add proxy to build images --- .gitea/workflows/build-and-push.yml | 22 ++++++++++++++++------ docker/Dockerfile | 3 +++ 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/build-and-push.yml b/.gitea/workflows/build-and-push.yml index 09e9c67..c62bba8 100644 --- a/.gitea/workflows/build-and-push.yml +++ b/.gitea/workflows/build-and-push.yml @@ -51,17 +51,27 @@ jobs: echo "$ACR_PASSWORD" | docker login "$ACR_REGISTRY" \ --username "$ACR_USERNAME" --password-stdin - - name: Build Docker Image + - name: Ensure proxy_net exists + run: docker network inspect proxy_net >/dev/null 2>&1 || docker network create proxy_net + + - name: Create buildx builder on proxy_net + run: | + docker buildx rm ci-builder >/dev/null 2>&1 || true + docker buildx create \ + --name ci-builder --use \ + --driver docker-container \ + --driver-opt network=proxy_net \ + --driver-opt env.http_proxy=http://proxy:7890,env.https_proxy=http://proxy:7890 + + - name: Build Docker Image (via proxy) env: IMAGE: ${{ secrets.ACR_REGISTRY }}/${{ secrets.ACR_NAMESPACE }}/${{ vars.IMAGE_NAME }} TAG: ${{ steps.meta.outputs.tag }} run: | set -euo pipefail - echo "Building ${IMAGE}:${TAG}" - - # 确保构建时使用 proxy_net,并把代理传给 RUN 阶段 - docker build \ - --network=proxy_net \ + docker buildx build \ + --builder ci-builder \ + --progress=plain \ --build-arg HTTP_PROXY=http://proxy:7890 \ --build-arg HTTPS_PROXY=http://proxy:7890 \ --build-arg NO_PROXY=localhost,127.0.0.1,proxy \ diff --git a/docker/Dockerfile b/docker/Dockerfile index 8fbe917..772e31d 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,5 +1,8 @@ # syntax=docker/dockerfile:1 FROM debian:12-slim +ARG HTTP_PROXY +ARG HTTPS_PROXY +ARG NO_PROXY WORKDIR /app