FROM golang:alpine as back ARG GOPROXY=https://goproxy.cn,direct WORKDIR /build COPY . /build RUN CGO_ENABLED=0 go build -trimpath -ldflags '-w -s' -o watcher ./main FROM oven/bun:1 as front ARG HTTP_PROXY=http://192.168.31.55:10809 ARG HTTPS_PROXY=http://192.168.31.55:10809 COPY . /build WORKDIR /build/wwwroot RUN bun install && bun run build FROM alpine:latest ARG HTTP_PROXY=http://192.168.31.55:10809 ARG HTTPS_PROXY=http://192.168.31.55:10809 RUN apk add --no-cache ca-certificates tzdata WORKDIR /work COPY --from=back /build/watcher /work/ COPY --from=front /build/wwwroot/dist /work/dist/ ENTRYPOINT ["/work/watcher"]