diff --git a/Dockerfile b/Dockerfile index 06ee988..78d1b06 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,24 @@ -FROM golang:1.17 +FROM golang:1.17-alpine AS builder +RUN apk --no-cache add ca-certificates git +WORKDIR /build +# Fetch dependencies +COPY go.mod go.sum ./ +RUN go mod download -WORKDIR /go/src/hakrawler -COPY . . +COPY hakrawler.go . +RUN CGO_ENABLED=0 go build -o hackrawler . -RUN go get -d -v ./... -RUN go install -v ./... +FROM alpine:latest -ENTRYPOINT ["hakrawler"] +RUN apk --no-cache upgrade +RUN mkdir /hackrawler \ + && adduser -D hackrawler --shell /usr/sbin/nologin \ + && chown -R hackrawler:hackrawler /hackrawler +WORKDIR /hackrawler + +COPY --from=builder /build/hackrawler . + +USER hackrawler + +ENTRYPOINT ["/hackrawler/hackrawler"]