diff options
Diffstat (limited to 'vendor/github.com/fullstorydev/grpcurl/Dockerfile')
| -rw-r--r-- | vendor/github.com/fullstorydev/grpcurl/Dockerfile | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/github.com/fullstorydev/grpcurl/Dockerfile b/vendor/github.com/fullstorydev/grpcurl/Dockerfile new file mode 100644 index 0000000..1d6ac4c --- /dev/null +++ b/vendor/github.com/fullstorydev/grpcurl/Dockerfile @@ -0,0 +1,36 @@ +FROM golang:1.23-alpine as builder +MAINTAINER Fullstory Engineering + +# create non-privileged group and user +RUN addgroup -S grpcurl && adduser -S grpcurl -G grpcurl + +WORKDIR /tmp/fullstorydev/grpcurl +# copy just the files/sources we need to build grpcurl +COPY VERSION *.go go.* /tmp/fullstorydev/grpcurl/ +COPY cmd /tmp/fullstorydev/grpcurl/cmd +# and build a completely static binary (so we can use +# scratch as basis for the final image) +ENV CGO_ENABLED=0 +ENV GO111MODULE=on +RUN go build -o /grpcurl \ + -ldflags "-w -extldflags \"-static\" -X \"main.version=$(cat VERSION)\"" \ + ./cmd/grpcurl + +FROM alpine:3 as alpine +WORKDIR / +COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt +COPY --from=builder /etc/passwd /etc/passwd +COPY --from=builder /grpcurl /bin/grpcurl +USER grpcurl + +ENTRYPOINT ["/bin/grpcurl"] + +# New FROM so we have a nice'n'tiny image +FROM scratch +WORKDIR / +COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt +COPY --from=builder /etc/passwd /etc/passwd +COPY --from=builder /grpcurl /bin/grpcurl +USER grpcurl + +ENTRYPOINT ["/bin/grpcurl"] |
