mirror of
https://github.com/stefanprodan/podinfo.git
synced 2026-02-14 10:19:52 +00:00
54 lines
1.0 KiB
Docker
54 lines
1.0 KiB
Docker
ARG GO_VERSION=1.25
|
|
ARG XX_VERSION=1.9.0
|
|
|
|
FROM --platform=$BUILDPLATFORM tonistiigi/xx:${XX_VERSION} AS xx
|
|
|
|
FROM --platform=$BUILDPLATFORM golang:${GO_VERSION}-alpine as builder
|
|
|
|
# Copy the build utilities.
|
|
COPY --from=xx / /
|
|
|
|
ARG TARGETPLATFORM
|
|
ARG REVISION
|
|
|
|
RUN mkdir -p /podinfo/
|
|
|
|
WORKDIR /podinfo
|
|
|
|
COPY . .
|
|
|
|
RUN go mod download
|
|
|
|
ENV CGO_ENABLED=0
|
|
RUN xx-go build -ldflags "-s -w \
|
|
-X github.com/stefanprodan/podinfo/pkg/version.REVISION=${REVISION}" \
|
|
-a -o bin/podinfo cmd/podinfo/*
|
|
|
|
RUN xx-go build -ldflags "-s -w \
|
|
-X github.com/stefanprodan/podinfo/pkg/version.REVISION=${REVISION}" \
|
|
-a -o bin/podcli cmd/podcli/*
|
|
|
|
FROM alpine:3.23
|
|
|
|
ARG BUILD_DATE
|
|
ARG VERSION
|
|
ARG REVISION
|
|
|
|
LABEL maintainer="stefanprodan"
|
|
|
|
RUN addgroup -S app \
|
|
&& adduser -S -G app app \
|
|
&& apk --no-cache add \
|
|
ca-certificates curl netcat-openbsd
|
|
|
|
WORKDIR /home/app
|
|
|
|
COPY --from=builder /podinfo/bin/podinfo .
|
|
COPY --from=builder /podinfo/bin/podcli /usr/local/bin/podcli
|
|
COPY ./ui ./ui
|
|
RUN chown -R app:app ./
|
|
|
|
USER app
|
|
|
|
CMD ["./podinfo"]
|