The official kube-state-metrics Docker image is published on the Kubernetes registry. This guide covers the official image paths, version pinning best practices, multi-architecture support (arm64), and GitHub release channels.

Official kube-state-metrics Docker Image

Since the migration from GCR to the Kubernetes registry, the canonical image path is:

# Current canonical image (registry.k8s.io)
registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.19.1

# Old GCR path (still works but deprecated for new versions)
k8s.gcr.io/kube-state-metrics/kube-state-metrics:v2.10.0
⚠️
Always pin to a specific version tag in production — never use :latest. The latest tag is updated on every release and can introduce breaking metric name changes.

Version History & Compatibility

VersionKubernetesGoReleased
v2.19.1 1.35 1.26 Jun 2026 latest
v2.19.0 1.35 — May 2026
v2.18.0 1.34 — Jan 2026
v2.17.0 1.33 — Sep 2025

kube-state-metrics pins each release to a single tested client-go/Kubernetes version rather than a range. Always check the official compatibility matrix on GitHub before upgrading, since it's updated with every release.

kube-state-metrics GitHub Repository

The kube-state-metrics GitHub repository is hosted in the Kubernetes org at github.com/kubernetes/kube-state-metrics. All releases, changelogs, and latest release manifests are published there.

# Install directly from the latest GitHub release
kubectl apply -f \
  https://github.com/kubernetes/kube-state-metrics/releases/latest/download/kube-state-metrics.yaml

# Or pin to a specific version
kubectl apply -f \
  https://github.com/kubernetes/kube-state-metrics/releases/download/v2.19.1/kube-state-metrics.yaml

Multi-Architecture Support (arm64)

kube-state-metrics publishes multi-arch images for both amd64 and arm64. The manifest list at registry.k8s.io automatically selects the correct architecture:

# Pull automatically selects amd64 or arm64
docker pull registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.19.1

# Inspect manifests
docker manifest inspect registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.19.1

This makes kube-state-metrics compatible with Apple Silicon Mac clusters (kind/minikube), AWS Graviton (arm64 EKS nodes), and Raspberry Pi clusters.

Bitnami kube-state-metrics Image

Bitnami publishes a hardened, non-root variant of the kube-state-metrics image:

docker.io/bitnami/kube-state-metrics:<version>

Bitnami's tags track upstream releases but lag by a few days — check the Bitnami tag list for the current equivalent of your target kube-state-metrics version. The image includes security scanning, automated CVE patching, and runs as a non-root user, and is functionally identical to the upstream image — same metrics, same flags.

Checking the Running Image Version

# Check the deployed image tag
kubectl get deploy kube-state-metrics -n monitoring \
  -o jsonpath='{.spec.template.spec.containers[0].image}'

# Via the build_info metric
kubectl port-forward svc/kube-state-metrics 8080:8080 -n monitoring
curl -s http://localhost:8080/metrics | grep build_info

The kube_state_metrics_build_info metric includes version, goversion, gitcommit, and builddate labels.

Keeping Up with kube-state-metrics Releases