Prometheus exporter for Docker Hub rate limits
4.1K
Prometheus exporter for Docker Hub rate limits
Note: To follow the highly advised least privilege principle, use an access token with "Public Repo Read-only" privileges.
# Anonymous
docker run -it --rm \
-p 8000:8000 \
docker.io/berkitamas/dockerhub-ratelimit-exporter:<tag or latest>
# Authenticated
docker run -it --rm \
-p 8000:8000 \
-e DOCKER_HUB_USERNAME="username" \
-e DOCKER_HUB_PASSWORD="changeme" \
docker.io/berkitamas/dockerhub-ratelimit-exporter:<tag or latest>
# Optionally create a Python venv
# Install Python requirements
pip install -r requirements.txt
# Start the application
python app.py
usage: app.py [-h] [-p PORT] [-l LISTEN] [--tls-crt TLS_CRT]
[--tls-key TLS_KEY] [-v]
Prometheus collector for Docker Hub rate limits
options:
-h, --help show this help message and exit
-p PORT, --port PORT Port to expose metrics to (default: 8000)
-l LISTEN, --listen LISTEN
Address to listen from (default: 0.0.0.0)
--tls-crt TLS_CRT TLS certificate file for HTTPS
--tls-key TLS_KEY TLS private key file for HTTPS
-v, --verbose Enable verbose logs
(excluding common metrics)
# HELP pulls_remaining Remaining pulls for Docker Hub
# TYPE pulls_remaining gauge
pulls_remaining{interval="21600",source="<IP address or user UUID>"} 96.0
# HELP pulls_total Total allowed pulls for Docker Hub
# TYPE pulls_total gauge
pulls_total{interval="21600",source="<IP address or user UUID>"} 100.0
DOCKER_HUB_USERNAME: Docker Hub username/access IDDOCKER_HUB_PASSWORD: Docker Hub password/access secretContent type
Image
Digest
sha256:e1716c73a…
Size
25.3 MB
Last updated
over 1 year ago
docker pull berkitamas/dockerhub-ratelimit-exporter