kube-state-metrics Docker & Self-Hosted Deployment

GitHub

Add-on agent to generate and expose cluster-level metrics.

1. Pull Image (DOCKERHUB) docker pull kubernetes/kube-state-metrics:latest
2. Docker Run (1-Click Launch) docker run -d --name kube-state-metrics -p 8080:8080 --restart always kubernetes/kube-state-metrics:latest
3. Podman Run podman run -d --name kube-state-metrics -p 8080:8080 --restart always kubernetes/kube-state-metrics:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/kubernetes/kube-state-metrics:latest
5. ORAS Pull (OCI Artifact) oras pull kubernetes/kube-state-metrics:latest
Dockerfile
ARG GOVERSION=1.27
ARG GOARCH
FROM golang:${GOVERSION} AS builder
ARG GOARCH
ENV GOARCH=${GOARCH}
WORKDIR /go/src/k8s.io/kube-state-metrics/
COPY . /go/src/k8s.io/kube-state-metrics/

RUN make build-local

FROM gcr.io/distroless/static-debian13:latest-${GOARCH}
COPY --from=builder /go/src/k8s.io/kube-state-metrics/kube-state-metrics /

USER nobody

ENTRYPOINT ["/kube-state-metrics", "--port=8080", "--telemetry-port=8081"]

EXPOSE 8080 8081