diff --git a/Dockerfile b/Dockerfile index 75d03ed..e3a8433 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,12 +18,10 @@ WORKDIR /app # Workspace and module manifests for cache COPY go.work go.work.sum ./ COPY backend/ ./backend/ +COPY worker/ ./worker/ COPY pkg/ ./pkg/ RUN go env -w GO111MODULE=on && go env -w GOPROXY=https://goproxy.cn,direct && \ - (cd backend && go mod download) && \ - (cd pkg/utils && go mod download) && \ - (cd pkg/models && go mod download) && \ - (cd pkg/services && go mod download) + go mod download # Build from workspace root so pkg/utils, pkg/models, pkg/services resolve RUN CGO_ENABLED=0 GOOS=linux go build -o backend ./backend diff --git a/worker/Dockerfile b/worker/Dockerfile index 26fa351..726f498 100644 --- a/worker/Dockerfile +++ b/worker/Dockerfile @@ -4,25 +4,14 @@ FROM golang:1.25.5 AS builder # Set destination for COPY WORKDIR /app - -# Download Go modules -COPY go.mod go.sum ./ - -RUN go env -w GO111MODULE=on && go env -w GOPROXY=https://goproxy.cn,direct && go mod download - -# Copy the source code. Note the slash at the end, as explained in -# https://docs.docker.com/engine/reference/builder/#copy COPY go.work go.work.sum ./ +COPY backend/ ./backend/ COPY worker/ ./worker/ COPY pkg/ ./pkg/ RUN go env -w GO111MODULE=on && go env -w GOPROXY=https://goproxy.cn,direct && \ - (cd worker && go mod download) && \ - (cd pkg/utils && go mod download) && \ - (cd pkg/models && go mod download) && \ - (cd pkg/services && go mod download) - + go mod download # Build -RUN CGO_ENABLED=0 GOOS=linux go build -o worker +RUN CGO_ENABLED=0 GOOS=linux go build -o worker ./worker FROM alpine:3 RUN apk add --no-cache pngquant jpegoptim