Зашто Testcontainers withEnv не усмерава преузимање слика кроз прокси
Конфигуришите Docker демон за неуспело преузимање; прокси променљиве контејнера стижу до програма тек након што се контејнер креира.
Ако Testcontainers не успе при преузимању слике, подешавања withEnv будућег контејнера не могу да помогну. Docker демон обавља то преузимање са регистра пре него што контејнер постоји.
| Неуспела операција | Прокси конфигурација коју треба проверити |
|---|---|
| Преузимање слике | Docker демон који тест користи и његова рута до регистра |
| Преузимање унутар покренутог контејнера | Улази које апликација подржава у том контејнеру |
| Java тест се повезује са Docker-ом или апликацијом | Java клијент који остварује ту везу |
За други случај додајте променљиве окружења у постојећу дефиницију GenericContainer:
container
.withEnv("http_proxy", "http://proxy.example:8080")
.withEnv("https_proxy", "http://proxy.example:8080");Ако је преузимању унутар контејнера дозвољено да користи јавни HTTP endpoint, попуните те вредности из листе HTTP проксија. Програм у слици мора да чита те променљиве. Оне не претварају произвољни сокет базе података у HTTP прокси саобраћај. Endpoint такође мора бити доступан из контејнера: његов 127.0.0.1 показује на њега самог.
За први случај пронађите Docker окружење које Testcontainers заиста користи. Удаљени демон или Docker Desktop могу да преузму конфигурацију из другог извора од локалног dockerd. Задржите локалне тест услуге и Docker API на њиховим предвиђеним рутама када додајете широки прокси подразумевани.