GitLab: Eseguire i test con Testcontainers

Questa documentazione fa parte della guida CI/CD. Consulta la guida completa qui: Come utilizzare GitLab CI/CD.

👋 Benvenuto nella documentazione di Stackhero!

Stackhero offre una soluzione GitLab cloud pronta all'uso, pensata per i team che necessitano di un ambiente veloce, sicuro e scalabile:

  • Utenti, repository, trasferimenti di dati e tempo di elaborazione CI/CD illimitati per la massima flessibilità.
  • Aggiornamenti semplici con un solo clic, così il tuo ambiente resta sempre aggiornato senza tempi di inattività.
  • Nome di dominio personalizzato protetto con HTTPS (ad esempio, https://git.tua-azienda.com) per un'immagine professionale e maggiore sicurezza.
  • Prestazioni costanti e sicurezza elevata sulla tua infrastruttura privata e dedicata. Nessun "vicino rumoroso" e isolamento totale garantito.
  • Possibilità di scegliere la posizione dell'hosting: 🇪🇺 Europa oppure 🇺🇸 USA in base alle tue esigenze di conformità o latenza.

Inizia rapidamente e concentrati sul tuo codice. La soluzione GitLab cloud hosting di Stackhero è pronta all'uso in circa 5 minuti.

Se la vostra suite di test utilizza Testcontainers, una libreria che avvia servizi reali (database, message broker e altro) come container Docker temporanei durante l'esecuzione dei test, la configurazione sopra riportata è già adatta. Mantenete il servizio docker:29-dind e le due variabili: Testcontainers utilizza DOCKER_HOST per raggiungere il demone Docker e collegarsi ai container che avvia, quindi non è necessaria alcuna configurazione aggiuntiva.

Omettere DOCKER_HOST è la causa più comune di errori di Testcontainers in CI. In tal caso, la libreria utilizza il socket Docker montato dal runner e non riesce a raggiungere i propri container di test, il che di solito si manifesta come un timeout del container helper Ryuk.