FROM golang:1.25-alpine AS builder

LABEL stage=gobuilder

ENV GOPROXY=https://goproxy.cn,direct
ENV TZ=Asia/Shanghai

WORKDIR /build

COPY go.mod go.sum ./

RUN go mod download

COPY . .

ARG BuildVersion
ARG BuildTime
ARG CommitID

RUN go build -v -o /build/iotlcm-worker-svr -ldflags "-X main.BuildVersion=${BuildVersion} -X main.CommitID=${CommitID} -X main.BuildTime=${BuildTime}"

FROM alpine:3.23

RUN apk add --no-cache ca-certificates tzdata

COPY --from=builder /usr/share/zoneinfo/Asia/Shanghai /usr/share/zoneinfo/Asia/Shanghai
ENV TZ=Asia/Shanghai

WORKDIR /app
COPY --from=builder /build/iotlcm-worker-svr /app/iotlcm-worker-svr
COPY --from=builder /build/build/build_config.yaml /app/config/config.yaml

CMD ["./iotlcm-worker-svr"]
