Als Testcontainers mislukt tijdens het ophalen van een image, kunnen de withEnv-instellingen van de toekomstige container niet helpen. De Docker-daemon doet die download uit het register voordat de container bestaat.

Mislukte bewerkingTe controleren proxyconfiguratie
Image-pullDe Docker-daemon die de test gebruikt en zijn route naar het register
Download in de draaiende containerDe invoer die de toepassing in die container ondersteunt
De Java-test verbindt met Docker of de toepassingDe Java-client die die verbinding maakt

Voeg voor het tweede geval omgevingsvariabelen toe aan de bestaande GenericContainer-definitie:

container
    .withEnv("http_proxy", "http://proxy.example:8080")
    .withEnv("https_proxy", "http://proxy.example:8080");

Als een download in de container een openbaar HTTP-eindpunt mag gebruiken, vul die waarden dan in uit de HTTP-proxylijst. Het programma in de image moet die variabelen lezen. Ze maken van een willekeurige databasesocket geen HTTP-proxyverkeer. Het eindpunt moet ook bereikbaar zijn vanuit de container: het 127.0.0.1 ervan verwijst naar zichzelf.

Zoek voor het eerste geval de Docker-omgeving die Testcontainers echt gebruikt. Een externe daemon of Docker Desktop kan de configuratie uit een andere bron halen dan een lokale dockerd. Houd lokale testdiensten en de Docker-API op hun bedoelde routes wanneer je een brede proxy-standaard toevoegt.

Gerelateerde artikelen