24 lines
558 B
Docker
24 lines
558 B
Docker
FROM golang:alpine AS backend-builder
|
|
RUN apk add --no-cache build-base
|
|
WORKDIR /build
|
|
COPY . .
|
|
ENV CGO_ENABLED=1
|
|
RUN go build -ldflags="-s -w" -o bin/server
|
|
|
|
RUN apk add --no-cache upx
|
|
|
|
RUN upx --best --lzma bin/server
|
|
|
|
# 使用更小的 Debian
|
|
FROM debian:bookworm-slim
|
|
# 安装最小运行时依赖
|
|
RUN apt-get update && apt-get install -y \
|
|
ca-certificates \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
COPY --from=backend-builder /build/bin/server /app/server
|
|
COPY static /app/static
|
|
COPY static/*.so /app/
|
|
WORKDIR /app
|
|
EXPOSE 8080
|
|
RUN ls -a
|
|
CMD ["./server"] |