From 7f9b4d6c32b4e53cf0f81f9e300bbb72f34ba386 Mon Sep 17 00:00:00 2001 From: Michael Shen Date: Tue, 7 Jun 2022 22:29:29 -0400 Subject: [PATCH] Update for Go 1.18 and switch to using go mod download Signed-off-by: Michael Shen --- README.md | 11 +++++------ examples/go/Dockerfile | 11 +++++------ examples/go/go.mod | 3 +++ 3 files changed, 13 insertions(+), 12 deletions(-) create mode 100644 examples/go/go.mod diff --git a/README.md b/README.md index 5503af38e..e6ce62ba9 100644 --- a/README.md +++ b/README.md @@ -85,17 +85,16 @@ Follow these steps to get started: ```dockerfile # Start by building the application. - FROM golang:1.17-bullseye as build + FROM golang:1.18 as build WORKDIR /go/src/app - ADD . /go/src/app + COPY . . - RUN go get -d -v ./... - - RUN go build -o /go/bin/app + RUN go mod download + RUN CGO_ENABLED=0 go build -o /go/bin/app # Now copy it into our base image. - FROM gcr.io/distroless/base-debian11 + FROM gcr.io/distroless/static-debian11 COPY --from=build /go/bin/app / CMD ["/app"] ``` diff --git a/examples/go/Dockerfile b/examples/go/Dockerfile index 1a0fdbe1e..aec5925ba 100644 --- a/examples/go/Dockerfile +++ b/examples/go/Dockerfile @@ -1,16 +1,15 @@ -FROM golang:1.17 as build-env +FROM golang:1.18 as build WORKDIR /go/src/app -COPY *.go ./ +COPY . . -RUN go mod init -RUN go get -d -v ./... +RUN go mod download RUN go vet -v RUN go test -v RUN CGO_ENABLED=0 go build -o /go/bin/app -FROM gcr.io/distroless/static +FROM gcr.io/distroless/static-debian11 -COPY --from=build-env /go/bin/app / +COPY --from=build /go/bin/app / CMD ["/app"] diff --git a/examples/go/go.mod b/examples/go/go.mod new file mode 100644 index 000000000..a42361ea0 --- /dev/null +++ b/examples/go/go.mod @@ -0,0 +1,3 @@ +module github.com/GoogleContainerTools/distroless/examples/go + +go 1.18