diff --git a/.github/workflows/Deploy.yml b/.github/workflows/Deploy.yml index 76be8c1..67b0929 100644 --- a/.github/workflows/Deploy.yml +++ b/.github/workflows/Deploy.yml @@ -18,11 +18,14 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 + # 移除 QEMU 设置步骤,因为我们不再需要模拟 + # - name: Set up QEMU + # uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 + with: + driver-opts: network=host - name: Login to Docker Hub uses: docker/login-action@v3 @@ -56,6 +59,8 @@ jobs: push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} + cache-from: type=registry,ref=${{ env.REGISTRY_IMAGE }}:cache + cache-to: type=inline changelog: name: Generate Changelog diff --git a/Dockerfile b/Dockerfile index 776669f..9be7c19 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,17 @@ -FROM oven/bun:1 AS base +FROM --platform=$BUILDPLATFORM oven/bun:1 AS base # Stage 1: Install dependencies FROM base AS deps WORKDIR /app COPY package.json bun.lockb ./ -RUN bun install --frozen-lockfile +RUN --mount=type=cache,target=/root/.bun bun install --frozen-lockfile # Stage 2: Build the application FROM base AS builder WORKDIR /app COPY --from=deps /app/node_modules ./node_modules COPY . . -RUN bun run build +RUN --mount=type=cache,target=/root/.bun bun run build # Stage 3: Production image FROM oven/bun:1-alpine AS runner