Skip to content

Commit

Permalink
Run as non root user
Browse files Browse the repository at this point in the history
  • Loading branch information
vincejv committed Nov 2, 2023
1 parent 8518569 commit d807922
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM --platform=${BUILDPLATFORM} golang:1.21 as build-env
FROM --platform=${BUILDPLATFORM} golang as build-env

ARG TARGETPLATFORM
ARG BUILDPLATFORM
Expand All @@ -11,13 +11,19 @@ RUN apt-get install -yq --no-install-recommends git
COPY . /go/src/github.com/vincejv/gpon-parser
WORKDIR /go/src/github.com/vincejv/gpon-parser

# Build
# Compile go binaries
ENV GOPATH=/go
RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} GO111MODULE=on go build -v -a -ldflags "-s -w" -o /go/bin/gpon-parser .

# Build final image from alpine
FROM --platform=${TARGETPLATFORM} alpine:latest
RUN apk --update --no-cache add curl && rm -rf /var/cache/apk/*
COPY --from=build-env /go/bin/gpon-parser /usr/bin/gpon-parser

# Create a group and user
RUN addgroup -S gpon-parser && adduser -S gpon-parser -G gpon-parser
USER gpon-parser

ENTRYPOINT ["gpon-parser"]

EXPOSE 8092

0 comments on commit d807922

Please sign in to comment.