Wêrom Testcontainers withEnv ôfbyldingsdownloads net troch in proxy stjoert
Konfigurearje de Docker-daemon foar in mislearre download; de proxyfariabelen fan 'e container berikke programma's pas neidat de container makke is.
As Testcontainers mislearret by it downloaden fan in ôfbylding, kinne de withEnv-ynstellings fan 'e takomstige container net helpe. De Docker-daemon docht dy download út it register foardat de container bestiet.
| Mislearre operaasje | Proxykonfiguraasje om te besjen |
|---|---|
| Ôfbyldingsdownload | De Docker-daemon dy't de test brûkt en syn rûte nei it register |
| Download binnen de draaiende container | De ynfier dy't de applikaasje yn dy container stipet |
| De Java-test ferbynt mei Docker of mei de applikaasje | De Java-klant dy't dy ferbining makket |
Foar it twadde gefal, foegje omjouwingsfariabelen ta oan 'e besteande GenericContainer-definysje:
container
.withEnv("http_proxy", "http://proxy.example:8080")
.withEnv("https_proxy", "http://proxy.example:8080");As in download binnen de container in iepenbier HTTP-einpunt brûke mei, folje dy wearden dan yn út 'e HTTP-proksylist. It programma yn 'e ôfbylding moat dy fariabelen lêze. Se meitsje fan in willekeurige databank-socket gjin HTTP-proksyferkear. It einpunt moat ek berikber wêze fan 'e container ôf: syn 127.0.0.1 wiist nei himsels.
Foar it earste gefal, fyn de Docker-omjouwing dy't Testcontainers echt brûkt. In ôfstâne daemon of Docker Desktop kin konfiguraasje fan in oare boarne nimme as in lokale dockerd. Hâld lokale testtsjinsten en de Docker-API op har bedoelde rûtes as jo in brede proxystandaard tafoegje.