35 lines
554 B
Docker
35 lines
554 B
Docker
FROM golang:1.25.3-alpine AS builder
|
|
|
|
RUN apk add --no-cache git ca-certificates
|
|
|
|
WORKDIR /src
|
|
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
|
|
COPY . .
|
|
|
|
ARG TARGETARCH
|
|
RUN CGO_ENABLED=0 GOOS=linux GOARCH=${TARGETARCH} go build \
|
|
-ldflags="-s -w" \
|
|
-o /bin/deployer \
|
|
./cmd/deployer
|
|
|
|
FROM alpine:latest
|
|
|
|
ARG UID
|
|
ARG GID
|
|
|
|
RUN addgroup -g ${GID} -S tingz && \
|
|
adduser -u ${UID} -S -G tingz -s /sbin/nologin tingz && \
|
|
chown -R tingz:tingz /tmp
|
|
|
|
COPY --from=builder /bin/deployer /deployer
|
|
|
|
USER tingz
|
|
|
|
EXPOSE 8080
|
|
|
|
ENTRYPOINT ["/deployer"]
|
|
|