Zašto Testcontainers withEnv ne usmjerava preuzimanje slika kroz proxy
Konfigurirajte Docker daemon za neuspjelo preuzimanje; proxy varijable kontejnera stižu do programa tek nakon što se kontejner kreira.
Ako Testcontainers ne uspije pri preuzimanju slike, postavke withEnv budućeg kontejnera ne mogu pomoći. Docker daemon obavlja to preuzimanje s registra prije nego kontejner postoji.
| Neuspjela operacija | Proxy konfiguracija koju treba provjeriti |
|---|---|
| Preuzimanje slike | Docker daemon koji test koristi i njegova ruta do registra |
| Preuzimanje unutar pokrenutog kontejnera | Ulazi koje aplikacija podržava u tom kontejneru |
| Java test se povezuje s Dockerom ili aplikacijom | Java klijent koji ostvaruje tu vezu |
Za drugi slučaj dodajte varijable okruženja u postojeću definiciju GenericContainer:
container
.withEnv("http_proxy", "http://proxy.example:8080")
.withEnv("https_proxy", "http://proxy.example:8080");Ako je preuzimanju unutar kontejnera dopušteno koristiti javni HTTP endpoint, popunite te vrijednosti iz liste HTTP proxyja. Program u slici mora čitati te varijable. One ne pretvaraju proizvoljni socket baze podataka u HTTP proxy saobraćaj. Endpoint također mora biti dostupan iz kontejnera: njegov 127.0.0.1 pokazuje na njega samog.
Za prvi slučaj pronađite Docker okruženje koje Testcontainers zaista koristi. Udaljeni daemon ili Docker Desktop mogu preuzeti konfiguraciju iz drugog izvora od lokalnog dockerd. Zadržite lokalne test usluge i Docker API na njihovim predviđenim rutama kada dodajete široki proxy zadani.