Dersom Testcontainers feiler mens et image hentes, hjelper ikke withEnv-innstillingene til den kommende containeren. Det er Docker-daemonen som utfører den nedlastingen fra registeret før containeren eksisterer.

Mislykket operasjonProxyoppsett som bør undersøkes
Image-hentingDocker-daemonen testen bruker, og veien dens til registeret
Nedlasting inne i containeren som kjørerInndataene applikasjonen støtter i den containeren
Java-testen kobler seg til Docker eller applikasjonenJava-klienten som etablerer den forbindelsen

For det andre tilfellet legger du miljøvariabler til den eksisterende GenericContainer-definisjonen:

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

Hvis en nedlasting inne i containeren tillates å bruke et offentlig HTTP-endepunkt, fyller du inn disse verdiene fra HTTP-proxylisten. Programmet i imaget må lese disse variablene. De gjør ikke en vilkårlig databasesocket om til HTTP-proxytrafikk. Endepunktet må også være tilgjengelig fra containeren: 127.0.0.1 peker på seg selv.

For det første tilfellet må du finne Docker-miljøet som Testcontainers faktisk bruker. En ekstern daemon eller Docker Desktop kan hente oppsettet fra en annen kilde enn en lokal dockerd. Hold lokale testtjenester og Docker-API-et på de tiltenkte rutene når du legger til en bred proxy-standard.

Relaterte artikler