Harbor DockerHub Mirror
We run Harbor DockerHub pull-through caches in Lisbon and Prague. Point your Docker daemon at the nearest one and your docker pull becomes faster, and you stop hitting Hub's anonymous rate limits.
Endpoints
| Region | URL |
|---|---|
| Lisbon (PT) | https://dhub-pt.euronodes.com |
| Prague (CZ) | https://dhub-cz.euronodes.com |
Pick whichever is closest to your VM. Either works from anywhere — latency is the only difference.
Setup
Step 1 — Edit /etc/docker/daemon.json
{
"registry-mirrors": ["https://dhub-pt.euronodes.com"]
}
dhub-cz if your VM is in Prague.
Step 2 — Restart Docker
systemctl restart docker
Step 3 — Verify
docker info | grep -A1 "Registry Mirrors"
That's it. docker pull nginx, docker pull python:3.12, etc. all keep working with their original names. Behind the scenes Docker fetches from our cache. The first pull of a given image populates the cache — subsequent pulls (even from other VMs) come from local SSD on our side.
What's Mirrored
Docker Hub only
Only docker.io (Docker Hub) is mirrored. Pulls from quay.io, ghcr.io, gcr.io, registry.k8s.io, etc. go directly to those upstreams and are not affected.
FAQ
Do I need an account? No. The mirror is public to all Euronodes customers.
Is there a rate limit? No on our side. Hub's own anonymous limits (100 pulls/6h per source IP) are largely absorbed by the cache.
Can I use it from outside Euronodes? Technically yes, the endpoints are public. We don't actively block it but reserve the right to.
Private images? Not supported by anonymous mirrors. For private repos pull directly from Hub.
Is my pull traffic logged? Image names and timestamps appear in our access logs, like any registry. No payload inspection.
Powered by Harbor
This service runs on Harbor. If you know Harbor and think there's a feature we should enable, open a ticket — we're happy to hear it.