refactor: 重构 Docker 构建流程,使用多阶段构建

This commit is contained in:
eryajf
2025-09-29 14:18:40 +08:00
parent 780ac14a8f
commit 198a18508b
2 changed files with 14 additions and 32 deletions

View File

@@ -1,13 +1,20 @@
FROM golang:1.25-alpine AS builder
ARG TARGETARCH
WORKDIR /app
COPY src/go.mod src/go.sum ./
RUN go mod download && apk add upx
COPY src/ .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=${TARGETARCH} go build -ldflags="-s -w" -trimpath -o hubproxy . && upx -9 hubproxy
FROM alpine
WORKDIR /root/
ENV BINARY_NAME=hubproxy
ARG TARGETOS
ARG TARGETARCH
COPY src/config.toml .
COPY build/hubproxy/${BINARY_NAME}-${TARGETOS}-${TARGETARCH} ${BINARY_NAME}
COPY --from=builder /app/hubproxy .
COPY --from=builder /app/config.toml .
CMD ["./hubproxy"]