ARG BASE_REGISTRY=docker.io/library FROM ${BASE_REGISTRY}/golang:1.25-alpine AS builder LABEL stage=gobuilder ENV GOPROXY=https://goproxy.cn,direct # RUN apk update --no-cache && apk add --no-cache tzdata # 安装GCC和相关依赖 # RUN apk add --no-cache gcc g++ make autoconf automake binutils-dev gmp-dev isl-dev patchelf # RUN apk update --no-cache && apk add --no-cache tzdata git expect WORKDIR /build COPY go.mod go.sum ./ RUN go mod download COPY . . ARG BuildVersion ARG BuildTime ARG CommitID RUN go build -o iotlcmupstreamchan_svc -ldflags "-w -s -X main.BuildVersion=${BuildVersion} -X main.CommitID=${CommitID} -X main.BuildTime=${BuildTime}" FROM ${BASE_REGISTRY}/alpine:3.23 AS alpine RUN apk add --no-cache ca-certificates tzdata # RUN apk update --no-cache && apk add --no-cache ca-certificates ENV TZ=Asia/Shanghai EXPOSE 11140 WORKDIR /app COPY --from=builder /build/iotlcmupstreamchan_svc /app/iotlcmupstreamchan_svc # Configuration is supplied by the deployment bind mount. RUN mkdir -p /app/config CMD ["./iotlcmupstreamchan_svc"]