Selon le fonctionnaire documentation gitlab une façon de permettre docker build
sur ci
consiste à utiliser l'option dind
service (en termes de gitlab-ci
services ).
Toutefois, comme c'est toujours le cas avec les travaux ci s'exécutant sur des exécuteurs Docker, l'option docker:latest
est également nécessaire.
Quelqu'un pourrait-il expliquer :
- quelle est la différence entre le
docker:dind
et ledocker:latest
des images ? - (le plus important) : pourquoi sont les deux le service et l'image docker nécessaire (par exemple comme indiqué dans cet exemple dont le lien se trouve dans la documentation github) pour effectuer par exemple un
docker build
dans le cadre d'un travail de fonctionnaire ? Est-ce que ladocker:latest
image ( dans lequel le travail sera exécuté !) intègrent le démon docker (et je pense que lesdocker-compose
également), qui sont les outils nécessaires pour les commandes dont nous avons besoin (par ex.docker build
,docker push
etc.) ?
Sauf erreur de ma part, la question est plus ou moins la suivante :
Pourquoi un client Docker et un démon Docker ne peuvent-ils pas résider dans le même conteneur Docker (activé) ?