Skip to content

Commit

Permalink
fix building docker image
Browse files Browse the repository at this point in the history
Use go modules instead of dep.  Use two stage build to build a minimal
(4 MB) application image.

Fixes #51 #71 #78
  • Loading branch information
willnorris committed Jul 28, 2021
1 parent 8746277 commit e596161
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 8 deletions.
24 changes: 17 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,10 +1,20 @@
FROM golang:1-alpine AS build-env
FROM golang:1.16 AS build

RUN apk add --no-cache --upgrade git openssh-client ca-certificates
RUN go get -u github.com/golang/dep/cmd/dep
WORKDIR /go/src/app
WORKDIR /app

# Install
RUN go get -u github.com/google/addlicense
COPY go.mod go.sum ./
RUN go mod download

ENTRYPOINT ["addlicense"]
# copy source and build
COPY . .
RUN CGO_ENABLED=0 GOOS=linux go build .


# make a bare minimal image
FROM scratch

# source to be scanned should be mounted to /src
WORKDIR /src
COPY --from=build /app/addlicense /app/addlicense

ENTRYPOINT ["/app/addlicense"]
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ docker run -it google/addlicense -h

- Usage example
```bash
docker run -v ${PWD}:/go/src/app/ -it google/addlicense -c "Google LLC" *.go
docker run -v ${PWD}:/src -it google/addlicense -c "Google LLC" *.go
```

## license
Expand Down

0 comments on commit e596161

Please sign in to comment.