Kung mabigo ang Testcontainers habang nag-pull ng imahe, hindi makakatulong ang withEnv na setting ng susunod na container. Ang Docker daemon ang gumagawa ng download na iyon mula sa registry bago pa umiral ang container.

Nabigong operasyonProxy configuration na dapat suriin
Pag-pull ng imaheAng Docker daemon na ginagamit ng test at ang ruta nito sa registry
Download sa loob ng tumatakbong containerAng mga input na sinusuportahan ng app sa container na iyon
Kumokonekta ang Java test sa Docker o sa appAng Java client na gumagawa ng koneksyong iyon

Para sa pangalawang kaso, magdagdag ng mga environment variable sa umiiral na depinisyon ng GenericContainer:

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

Kung pinapayagan ang download sa loob ng container na gumamit ng pampublikong HTTP endpoint, punan ang mga value na iyon mula sa listahan ng HTTP proxy. Dapat basahin ng program sa imahe ang mga variable na iyon. Hindi nila ginagawang HTTP proxy traffic ang anumang database socket. Dapat ding maabot ang endpoint mula sa container: ang 127.0.0.1 nito ay tumutukoy sa sarili nito.

Para sa unang kaso, hanapin ang Docker environment na aktuwal na ginagamit ng Testcontainers. Maaaring kumuha ng configuration ang remote daemon o Docker Desktop mula sa ibang source kaysa lokal na dockerd. Panatilihin ang mga lokal na test service at ang Docker API sa kanilang inilaan na ruta kapag nagdaragdag ng malawak na default na proxy.

Kaugnay na mga artikulo