GitLab: Exécuter vos tests avec Testcontainers

Cette documentation fait partie du guide CI/CD. Consultez le guide complet ici : Comment utiliser GitLab CI/CD.

👋 Bienvenue dans la documentation Stackhero !

Stackhero offre une solution GitLab cloud clé en main, pensée pour les équipes qui ont besoin d’un environnement rapide, sécurisé et évolutif :

  • Utilisateurs, dépôts, transferts de données et temps de traitement CI/CD illimités pour une flexibilité maximale.
  • Mises à jour faciles en un seul clic, pour garder votre environnement à jour sans interruption.
  • Nom de domaine personnalisé sécurisé en HTTPS (par exemple, https://git.votre-entreprise.com) pour une image professionnelle et une sécurité accrue.
  • Performance constante et sécurité renforcée sur votre propre infrastructure privée et dédiée. Aucun voisin bruyant, isolation complète assurée.
  • Choix de l’emplacement d’hébergement : 🇪🇺 Europe ou 🇺🇸 USA selon vos exigences de conformité ou de latence.

Démarrez rapidement et concentrez-vous sur votre code. La solution GitLab cloud hosting de Stackhero est prête à l’emploi en environ 5 minutes.

Si votre suite de tests utilise Testcontainers, une bibliothèque qui démarre des services réels (bases de données, message brokers, etc.) sous forme de conteneurs Docker temporaires pendant l'exécution des tests, la configuration ci-dessus est déjà adaptée. Gardez le service docker:29-dind et les deux variables : Testcontainers utilise DOCKER_HOST pour accéder au démon Docker et se connecter aux conteneurs qu'il démarre, donc aucune autre configuration n'est nécessaire.

Oublier de définir DOCKER_HOST est la cause la plus fréquente d'échecs de Testcontainers en CI. La bibliothèque utilise alors le socket Docker monté par le runner et ne parvient pas à accéder à ses propres conteneurs de test, ce qui se manifeste généralement par un timeout du conteneur helper Ryuk.