GitLab Runner: Construire une image Docker avec Docker-in-Docker

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 !

Voici un exemple de .gitlab-ci.yml que vous pouvez ajouter à votre dépôt. Cette configuration construit le Dockerfile situé à la racine de votre projet :

build-image:
  stage: build
  image: docker:27
  services:
    - docker:27-dind
  variables:
    DOCKER_TLS_CERTDIR: "/certs"
  before_script:
    - docker info
  script:
    # Remplacez "my-image" par le nom désiré :
    - docker build -t my-image .
    # Vous pouvez aussi lancer un test rapide sur l’image construite :
    # - docker run --rm my-image /path/to/tests

Dans cette configuration, le service docker:27-dind démarre le démon Docker. La variable DOCKER_TLS_CERTDIR: "/certs" active une connexion TLS sécurisée entre votre job et le démon Docker.