FROM golang:1.25-alpine AS backend-builder
WORKDIR /build
ENV GOPROXY=https://goproxy.cn,direct
COPY . .

RUN go build -ldflags="-s -w" -o bin/server

RUN apk add --no-cache upx

RUN upx --best --lzma bin/server

FROM alpine:latest
COPY --from=backend-builder /build/bin/server /app/server

WORKDIR /app
EXPOSE 8080
RUN ls -a
CMD ["./server"]