Dockerfile 727 B

1234567891011121314151617181920212223242526272829303132
  1. FROM golang:1.11-alpine AS BUILD
  2. ENV VERSION 1.2.0
  3. WORKDIR /src
  4. # module
  5. RUN apk --no-cache add git ca-certificates tzdata && update-ca-certificates
  6. COPY go.mod go.sum ./
  7. RUN go mod download
  8. # build
  9. COPY ga ga
  10. COPY server server
  11. COPY main.go ./
  12. RUN CGO_ENABLED=0 GOOS=linux go build -ldflags "-w -s" -o ga-proxy
  13. FROM alpine:3.8
  14. LABEL maintainer "giuem <[email protected]>"
  15. EXPOSE 80
  16. ENV IP=0.0.0.0
  17. ENV PORT=80
  18. ENV GIN_MODE=release
  19. COPY --from=BUILD /usr/share/zoneinfo /usr/share/zoneinfo
  20. COPY --from=BUILD /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
  21. COPY --from=BUILD /src/ga-proxy /ga-proxy
  22. HEALTHCHECK --interval=3m --timeout=10s --start-period=2s --retries=3 \
  23. CMD /ga-proxy ping
  24. CMD ["/ga-proxy"]