GitLab Runner: Construire une image Docker avec Docker-in-Docker
Cette documentation fait partie du guide Construction d'images Docker. Consultez le guide complet ici : Construisez et poussez des images Docker depuis vos pipelines GitLab CI/CD en utilisant votre runner Stackhero et Docker-in-Docker.
👋 Bienvenue sur la documentation de Stackhero !
Stackhero vous propose une solution GitLab Runner cloud simple à utiliser, conçue pour exécuter efficacement vos jobs GitLab CI/CD. Voici ce dont vous pouvez bénéficier :
- Minutes CI/CD illimitées : aucune facturation à la minute, vos pipelines s'exécutent quand vous en avez besoin.
- Jobs simultanés : lancez plusieurs jobs en parallèle pour accélérer l'ensemble de votre pipeline.
- Docker executor avec prise en charge de Docker-in-Docker : facilitez la création et le push de vos images de conteneurs.
- Compatible avec GitLab.com ainsi que toute instance GitLab auto-hébergé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 lancez 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 souhaité :
- docker build -t my-image .
# Vous pouvez éventuellement 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.