GitLab Runner: Accélérer les builds répétés
Cette documentation fait partie du guide Création d’images Docker. Consultez le guide complet ici : Construisez et poussez des images Docker à partir de vos pipelines GitLab CI/CD en utilisant votre runner Stackhero et Docker-in-Docker.
👋 Bienvenue dans la documentation Stackhero !
Stackhero vous offre une solution GitLab Runner cloud facile à utiliser, conçue pour gérer efficacement vos jobs GitLab CI/CD. Voici ce à quoi vous pouvez vous attendre :
- Minutes CI/CD illimitées : aucune facturation à la minute, vos pipelines s’exécutent dès que vous en avez besoin.
- Plusieurs jobs simultanés : exécutez plusieurs jobs en même temps pour accélérer l’ensemble de votre pipeline.
- Docker executor avec prise en charge de Docker-in-Docker : simplifiez la création et le push de vos images de conteneurs.
- Compatible avec GitLab.com ainsi qu’avec toute instance GitLab autogérée.
- Une VM privée et dédiée propulsée par des disques NVMe/SSD rapides pour des builds fiables et constants.
- Disponible dans les régions 🇪🇺 Europe et 🇺🇸 USA.
Gagnez du temps : connectez votre premier GitLab Runner et commencez à exécuter vos pipelines en quelques minutes seulement !
Comme le disque de votre runner est persistant entre les pipelines, vous pouvez accélérer les builds en réutilisant les couches d’images précédentes comme cache. Voici comment configurer cela :
build-cached:
stage: build
image: docker:27
services:
- docker:27-dind
variables:
DOCKER_TLS_CERTDIR: "/certs"
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
script:
# Essayez de récupérer la dernière image pour alimenter le cache (ce n’est pas grave si elle n’existe pas encore) :
- docker pull "$CI_REGISTRY_IMAGE:latest" || true
- docker build --cache-from "$CI_REGISTRY_IMAGE:latest" -t "$CI_REGISTRY_IMAGE:latest" .
- docker push "$CI_REGISTRY_IMAGE:latest"
Cette méthode permet à vos pipelines de s’exécuter plus rapidement au fil du temps en tirant parti du cache de couches Docker.