Si vous utilisez Gitlab CI pour builder des images docker, vous obtenez cette erreur, ce qui bloque la CI :
ERROR: Error response from daemon: client version 1.43 is too old. Minimum supported API version is 1.44, please upgrade your client to a newer version: driver not connecting
Cela veut dire que le client docker utilisé par la CI est trop ancien (ici 1.43 au lieu de 1.44).
Si Gitlab utilise le docker présent sur le système, à vous de le mettre à jour sur le serveur.
Sinon, vous utilisez une image docker qui contient un client docker permettant de builder une image docker 🤯.
Dans ce cas, pour utiliser un client plus récent, vous devez utiliser une image plus récente.
Vous pouvez spécifier cette version directement dans le fichier .gitlab-ci.yml à votre étape de build :
docker-build-backend-base:
stage: docker-build-base
only:
refs:
- merge_requests
changes:
- .gitlab-ci.yml
image: docker:29.0.0
interruptible: true
variables:
DOCKER_BUILDKIT: 1
DOCKER_DRIVER: overlay2
before_script:
- apk update && apk add make
script:
- docker build -t gitlab.mydomain.com:1234/group/project/backend/base:latest -f ./docker/image/php/base/Dockerfile ./docker/image/php/base
La ligne importante ici est image: docker:29.0.0, qui force l’utilisation de la version 29 de l’image.
Cette image contient un client Docker >= 1.44.