Docker.io limite désormais les accès.
Ceci se traduit par des erreurs dans les pipelines CI/CD de PLMlab, de ce type :
“ERROR: Job failed (system failure): prepare environment: waiting for
pod running: pulling image “XXXX”: image pull failed: rpc
error: code = Unknown desc = Error reading manifest latest in
docker.io/library/XXX: toomanyrequests: You have reached your pull
rate limit…”
Au lieu d’utiliser les images de dockerhub (où il y a une limite
d’accès), vous pouvez utiliser celles que l’on met à disposition sur
plmlab.
Pour la liste des images disponibles, rendez-vous ici :
https://docker-images.pages.math.cnrs.fr/
L’erreur peut se produire également sur PLMShift.
Il est possible de lier un compte perso Docker pour récupérer les images :
Commencer par s’authentifier :
docker login
Cela génère un fichier dans $HOME/.docker/config.json
contenant par exemple :
{
"auths": {
"https://index.docker.io/v1/": {
"auth": "fsdlkfjsdkfjsdlfksjdflsdjkfsld"
}
}
}
Ce fichier va nous permettre de créer un secret sur PLMShift :
oc create secret generic docker-registry-docker --from-file=.dockerconfigjson=.docker/config.json --type=kubernetes.io/dockerconfigjson
On indique ensuite à PLMShift d’utiliser ce secret pour obtenir les images :
oc secrets link default docker-registry-docker --for=pull
depouill
(Philippe Depouilly)
Octobre 8, 2021, 9:13
4
Afin de contourner le problème il est aussi possible de se référer à un “digest” plutôt qu’un “tag”.
Par exemple, au lieu de demander l’image ubuntu:20.04
, vous pouvez récupérer le “digest” correspondant sur docker.io et demander ici ubuntu@sha256:3555f4996aea6be945ae1532fa377c88f4b3b9e6d93531f47af5d78a7d5e3761
Ainsi vous allez utiliser le cache de docker.io disponible sur PLMshift et vous affranchir de la limite de docker.io
1 « J'aime »
Bonjour, testé et validé, merci.