about summary refs log tree commit diff
path: root/tools/govanity/Dockerfile
blob: 20df29f8d7e3c2c98c1b4bbb3aaf9e93c5ac9107 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
FROM golang:1.16 AS builder

ENV USER=app
RUN adduser \
    --disabled-password \
    --gecos "" \
    --home "/src" \
    --shell "/sbin/nologin" \
    --uid "10001" \
    "${USER}"

WORKDIR /src

ADD go.mod /src
ADD go.sum /src
RUN go mod download

ADD . /src

RUN CGO_ENABLED=0 GOOS=linux go build -trimpath -a -installsuffix cgo -ldflags '-extldflags "-static"' -o app .

FROM scratch
COPY --from=builder /src/app /vanity
COPY --from=builder /src/vanity.yaml /vanity.yaml
COPY --from=builder /etc/passwd /etc/passwd
COPY --from=builder /etc/group /etc/group

USER app:app

ENTRYPOINT ["/vanity"]