FROM golang:1.20-alpine as build

RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories

RUN apk --no-cache add tzdata \
	&& apk --no-cache add ca-certificates \
    && update-ca-certificates

#设置 GO 环境变量
ENV CGO_ENABLED=0
ENV GO111MODULE=on
ENV GOPROXY=https://mirrors.aliyun.com/goproxy/
ENV GOPRIVATE=gits.branchcn.com/backend

WORKDIR /joybuywork

COPY . .

RUN go build -o joybuywork ./cmd/joybuywork/joybuywork.go

FROM scratch as final

# 设置时区为上海
COPY --from=build /usr/share/zoneinfo/Asia/Shanghai /usr/share/zoneinfo/Asia/Shanghai
ENV TZ=Asia/Shanghai

COPY --from=build /joybuywork/joybuywork /
COPY --from=build /joybuywork/asset/ /asset/
COPY --from=build /joybuywork/etc/ /etc/
COPY --from=build /joybuywork/tmp/ /tmp/
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/

ENTRYPOINT [ "/joybuywork", "-env" ]
CMD ["prod"]
