GitLab: Executar os seus testes com Testcontainers
Esta documentação faz parte do guia CI/CD. Consulte o guia completo aqui: Como utilizar o GitLab CI/CD.
👋 Bem-vindo à documentação da Stackhero!
A Stackhero disponibiliza uma solução GitLab cloud pronta a usar, pensada para equipas que necessitam de um ambiente rápido, seguro e escalável:
- Utilizadores, repositórios, transferências de dados e tempo de processamento CI/CD ilimitados para máxima flexibilidade.
- Atualizações simples com um só clique, mantendo o seu ambiente sempre atualizado sem tempo de indisponibilidade.
- Nome de domínio personalizado protegido com HTTPS (por exemplo, https://git.sua-empresa.com) para uma imagem profissional e maior segurança.
- Desempenho consistente e elevada segurança na sua própria infraestrutura privada e dedicada. Sem vizinhos ruidosos e com total isolamento.
- Escolha da localização de alojamento: 🇪🇺 Europa ou 🇺🇸 USA, conforme as suas necessidades de conformidade ou latência.
Comece rapidamente e foque-se no seu código. A solução de GitLab cloud hosting da Stackhero fica pronta a usar em cerca de 5 minutos.
Se a sua suite de testes utiliza Testcontainers, uma biblioteca que inicia serviços reais (bases de dados, message brokers, entre outros) como contentores Docker descartáveis durante a execução dos testes, a configuração acima já cobre este cenário. Mantenha o serviço docker:29-dind e ambas as variáveis: o Testcontainers utiliza o DOCKER_HOST para aceder ao daemon Docker e ligar-se aos contentores que inicia, não sendo necessária mais nenhuma configuração.
Omissão do DOCKER_HOST é a causa mais comum de falhas do Testcontainers em CI. A biblioteca recorre então ao socket Docker montado pelo runner e não consegue aceder aos seus próprios contentores de teste, o que normalmente se manifesta como um timeout do contentor auxiliar Ryuk.