wujian_develop_tool/template/service/docker/golang/Dockerfile.tpl

20 lines
551 B
Smarty

FROM golang:1.17 as builder
ENV GO111MODULE on
ENV GOPROXY https://goproxy.io,direct
WORKDIR /go/cache
ADD go.mod .
ADD go.sum .
RUN go mod download -x
WORKDIR /go/src
ADD . .
RUN go mod tidy
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w" -o service_{{ .Name }} ./{{ .Root }}
FROM reg.icechen.cn/alpine as {{ .Name }}
WORKDIR /go/src
COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo
COPY --from=builder /go/src/service_{{ .Name }} ./
ENV TZ=Asia/Shanghai
RUN chmod +x ./service_{{ .Name }}
EXPOSE 8080
CMD ["./service_{{ .Name }}"]