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

20 lines
535 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 api_{{ .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/api_{{ .Name }} ./
ENV TZ=Asia/Shanghai
RUN chmod +x ./api_{{ .Name }}
EXPOSE 8080
CMD ["./api_{{ .Name }}"]