From 7935fd85b95f33aa55be5d8990a682b97c12530c Mon Sep 17 00:00:00 2001 From: Cosmin Cojocar Date: Thu, 25 Apr 2019 12:48:22 +0200 Subject: [PATCH] Rework the Dockerfile for Go modules Signed-off-by: Cosmin Cojocar --- Dockerfile | 23 +++++++++++++---------- Makefile | 2 +- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/Dockerfile b/Dockerfile index c0685a6..de7e153 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,14 @@ -FROM golang:1.11.5-alpine3.9 as build -WORKDIR /go/src/github.com/securego/gosec -COPY . . -RUN apk add -U git make -RUN go get -u github.com/golang/dep/cmd/dep -RUN make +ARG GO_VERSION=1.12 +FROM golang:${GO_VERSION}-alpine AS builder +RUN apk add --update --no-cache ca-certificates make git curl +RUN mkdir -p /build +WORKDIR /build +COPY . /build/ +RUN go mod download +RUN make build-linux -FROM golang:1.11.5-alpine3.9 -RUN apk add -U gcc musl-dev -COPY --from=build /go/src/github.com/securego/gosec/gosec /usr/local/bin/gosec -ENTRYPOINT ["gosec"] +FROM golang:${GO_VERSION}-alpine +RUN apk add --update --no-cache ca-certificates git +ENV GO111MODULE on +COPY --from=builder /build/gosec /bin/gosec +ENTRYPOINT ["/bin/gosec"] diff --git a/Makefile b/Makefile index 95d5eb4..41c70e8 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ GIT_TAG?= $(shell git describe --always --tags) BIN = gosec FMT_CMD = $(gofmt -s -l -w $(find . -type f -name '*.go' -not -path './vendor/*') | tee /dev/stderr) IMAGE_REPO = securego -BUILDFLAGS := '' +BUILDFLAGS := '-w -s' CGO_ENABLED = 0 default: