Pokud Testcontainers selže při stahování image, nastavení withEnv budoucího kontejneru nepomůže. Toto stažení z registru provádí démon Docker ještě předtím, než kontejner existuje.

Neúspěšná operaceProxy konfigurace k prověření
Stažení imageDémon Docker, který test používá, a jeho cesta k registru
Stažení uvnitř běžícího kontejneruVstupy, které aplikace v tomto kontejneru podporuje
Java test se připojuje k Dockeru nebo k aplikaciJava klient, který to spojení vytváří

Pro druhý případ přidejte proměnné prostředí do stávající definice GenericContainer:

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

Pokud smí stažení uvnitř kontejneru použít veřejný HTTP endpoint, vyplňte tyto hodnoty z seznamu HTTP proxy. Program v image musí tyto proměnné číst. Nepřemění libovolný socket databáze na provoz přes HTTP proxy. Endpoint musí být také dosažitelný z kontejneru: jeho 127.0.0.1 odkazuje na něj samotný.

Pro první případ najděte prostředí Docker, které Testcontainers skutečně používá. Vzdálený démon nebo Docker Desktop mohou brát konfiguraci z jiného zdroje než místní dockerd. Ponechte místní testovací služby a Docker API na jejich zamýšlených cestách, když přidáváte širokou výchozí proxy.

Související články