-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile
More file actions
36 lines (26 loc) · 840 Bytes
/
Dockerfile
File metadata and controls
36 lines (26 loc) · 840 Bytes
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
31
32
33
34
35
36
FROM golang:1.24 AS builder
ARG VERSION=dev
WORKDIR /src
COPY go.mod go.sum ./
RUN go mod download
COPY . .
RUN CGO_ENABLED=0 go build \
-tags prod \
-ldflags "-s -w -X github.com/retyc/retyc-cli/cmd.Version=${VERSION}" \
-o /retyc .
RUN useradd --no-log-init -u 1000 -U -m retyc && \
mkdir -p /home/retyc/.config/retyc
# ---
FROM scratch
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=builder /etc/passwd /etc/passwd
COPY --from=builder /etc/group /etc/group
COPY --from=builder --chown=1000:1000 /home/retyc /home/retyc
COPY --from=builder /retyc /retyc
USER 1000:1000
ENV HOME=/home/retyc \
XDG_CONFIG_HOME=/home/retyc/.config \
XDG_CACHE_HOME=/home/retyc/.cache \
XDG_DATA_HOME=/home/retyc/.local/share
VOLUME ["/home/retyc/.config/retyc"]
ENTRYPOINT ["/retyc"]