Miksi Testcontainers withEnv ei välitä imagen hakua välityspalvelimen kautta
Määritä Docker-daemon epäonnistunutta hakua varten; kontin välityspalvelinmuuttujat tavoittavat ohjelmat vasta, kun kontti on luotu.
Jos Testcontainers epäonnistuu imagen haussa, tulevan kontin withEnv-asetukset eivät voi auttaa. Docker-daemon tekee kyseisen latauksen rekisteristä ennen kuin kontti on olemassa.
| Epäonnistunut toiminto | Tarkistettava välityspalvelinasetus |
|---|---|
| Imagen haku | Testin käyttämä Docker-daemon ja sen reitti rekisteriin |
| Lataus käynnissä olevan kontin sisällä | Sovelluksen tukemat syötteet kyseisessä kontissa |
| Java-testi yhdistää Dockeriin tai sovellukseen | Java-asiakasohjelma, joka tekee kyseisen yhteyden |
Toisessa tapauksessa lisää ympäristömuuttujat olemassa olevaan GenericContainer-määritelmään:
container
.withEnv("http_proxy", "http://proxy.example:8080")
.withEnv("https_proxy", "http://proxy.example:8080");Jos kontin sisäinen lataus saa käyttää julkista HTTP-päätepistettä, täytä kyseiset arvot HTTP-välityspalvelinluettelosta. Imagen ohjelman on luettava kyseiset muuttujat. Ne eivät muuta mielivaltaista tietokantapistoketta HTTP-välityspalvelinliikenteeksi. Päätepisteen on myös oltava tavoitettavissa kontista: sen 127.0.0.1 viittaa siihen itseensä.
Ensimmäisessä tapauksessa selvitä Docker-ympäristö, jota Testcontainers todella käyttää. Etädaemon tai Docker Desktop voi ottaa asetukset eri lähteestä kuin paikallinen dockerd. Pidä paikalliset testipalvelut ja Docker API aiottuilla reiteillään, kun lisäät laajan välityspalvelimen oletusarvon.