diff options
Diffstat (limited to 'Dockerfile')
-rw-r--r-- | Dockerfile | 25 |
1 files changed, 23 insertions, 2 deletions
@@ -1,12 +1,33 @@ FROM docker.io/golang:alpine +RUN addgroup -S app && adduser -S -g app app + WORKDIR /app RUN apk add --update npm RUN npm i sass govuk-frontend --save + +# Switch to root user +USER root + COPY go.mod ./ RUN go mod download && go mod verify + COPY . . -RUN go build -v -o /usr/local/bin/app ./cmd/web -CMD ["app"] +RUN chown -R app:app /app + +# Create a directory for the binary +RUN mkdir /app/bin +RUN chown app:app /app/bin + +# Switch back to app user +USER app + +# Build the Go binary in the /app/bin directory +RUN go build -v -o /app/bin/app ./cmd/web + +# Set the working directory to /app/bin +WORKDIR /app/bin + +CMD ["./app"] EXPOSE 4000 |