Dockerfile 772 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. FROM golang:alpine as builder
  2. # 使用国内alpine源
  3. RUN echo http://mirrors.aliyun.com/alpine/v3.8/main/ > /etc/apk/repositories
  4. # 设置系统时区 - +8时区
  5. RUN apk update && apk add tzdata ca-certificates bash
  6. RUN rm -rf /etc/localtime && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  7. RUN echo "Asia/Shanghai" > /etc/timezones
  8. ENV GO111MODULE=on \
  9. GOPROXY=https://goproxy.cn,direct \
  10. CGO_ENABLED=0 \
  11. GOOS=linux \
  12. GOARCH=amd64
  13. WORKDIR /src
  14. COPY ./src/go.mod .
  15. COPY ./src/go.sum .
  16. RUN go mod download
  17. COPY ./src .
  18. RUN go build -o /src/main .
  19. FROM scratch
  20. WORKDIR /dist
  21. COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs
  22. COPY --from=builder /src/.env .
  23. COPY --from=builder /src/main .
  24. # EXPOSE 3000
  25. CMD ["./main"]