16 votes

L'exécution de Gitlab tire une image pour chaque tâche

J'ai un gitlab coureur utilisant docker comme le exécuteur testamentaire . Mon problème est qu'il tire l'image que j'ai définie pour chaque travail, ce qui prend plus de temps pour terminer le pipeline

enter image description here

Comment puis-je mettre l'image en cache et ajouter un "pull" ? policy pour le job ou le runner ? Quelqu'un s'il vous plaît ?

15voto

Tarun Khosla Points 950

La politique de retrait par défaut pour un exécuteur Docker est "Always". Vous pouvez utiliser la politique de retrait "if-not-present" pour vous assurer qu'il n'est retiré que lorsqu'il n'est pas disponible localement.

Lisez la documentation de l'option aquí et comment les politiques fonctionnent aquí

12voto

VonC Points 414372

Vérifiez si la dernière GitLab 13.8 (janvier 2021) peut vous aider.

Configuration de plusieurs politiques d'extraction d'images pour l'exécuteur Docker

Lorsque vos tâches de CI récupèrent une image de conteneur à partir d'un registre de conteneurs, une connexion réseau perdue peut entraîner des heures de développement perdues et avoir un impact négatif sur les déploiements de produits sensibles au facteur temps.

Pour résoudre ce problème de résilience, l'exécuteur Docker de GitLab Runner prend désormais en charge l'utilisation de plusieurs valeurs pour l'attribut pull_policy qui est définie dans le Runner GitLab. config.toml fichier.

Vous pouvez utiliser ces valeurs, ou les politiques d'extraction d'images empilées, pour configurer des combinaisons de politiques d'extraction et atténuer l'impact causé par la perte de connectivité.

Par exemple, si vous configurez pull_policy =[always, if-not-present] la politique d'attraction sera always tirer l'image.
Toutefois, si le registre du conteneur cible n'est pas disponible, l'exécuteur Docker du programme GitLab Runner se repliera sur lui-même et utilisera l'attribut if-not-present ce qui signifie qu'une copie locale de l'image sera utilisée pour ce travail de pipeline.

https://about.gitlab.com/images/13_8/runner-docker-pull-policy.png -- Configure multiple image pull policies for Docker executor

Véase Documentation y Numéro .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X