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 stvori.
Ako Testcontainers ne uspije tijekom preuzimanja 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 povezuje se 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 preuzimanje unutar kontejnera smije koristiti javni HTTP endpoint, popunite te vrijednosti iz popisa HTTP proxyja. Program u slici mora čitati te varijable. One ne pretvaraju proizvoljni socket baze podataka u HTTP proxy promet. Endpoint također mora biti dostupan iz kontejnera: njegov 127.0.0.1 pokazuje na njega samoga.
Za prvi slučaj pronađite Docker okruženje koje Testcontainers doista koristi. Udaljeni daemon ili Docker Desktop mogu preuzeti konfiguraciju iz drugog izvora od lokalnog dockerd. Zadržite lokalne testne usluge i Docker API na njihovim predviđenim rutama kada dodajete široki proxy zadani.