28 lines
903 B
Docker
28 lines
903 B
Docker
FROM golang:1.25-alpine AS build
|
|
WORKDIR /src
|
|
ARG VERSION=dev
|
|
ARG VCS_REF=unknown
|
|
ARG BUILD_DATE=unknown
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
COPY cmd ./cmd
|
|
COPY internal ./internal
|
|
COPY pkg ./pkg
|
|
RUN CGO_ENABLED=0 go build -buildvcs=false -trimpath \
|
|
-ldflags="-s -w -X main.version=${VERSION} -X main.commit=${VCS_REF} -X main.buildDate=${BUILD_DATE}" \
|
|
-o /out/configcenter ./cmd/server
|
|
|
|
FROM alpine:3.21
|
|
ARG VERSION=dev
|
|
ARG VCS_REF=unknown
|
|
ARG BUILD_DATE=unknown
|
|
LABEL org.opencontainers.image.title="Config Center Server" \
|
|
org.opencontainers.image.version="${VERSION}" \
|
|
org.opencontainers.image.revision="${VCS_REF}" \
|
|
org.opencontainers.image.created="${BUILD_DATE}"
|
|
RUN apk add --no-cache ca-certificates && adduser -D -u 10001 configcenter
|
|
USER configcenter
|
|
COPY --from=build /out/configcenter /usr/local/bin/configcenter
|
|
EXPOSE 8080
|
|
ENTRYPOINT ["configcenter"]
|