Aċċessa proxy tal-host minn container Docker bridge
Agħżel indirizz ta’ proxy li jista’ jintlaħaq mill-container u ddistingwi endpoint pubbliku minn proxy fuq il-host ta’ Docker.
Għal container normali fuq netwerk bridge, 127.0.0.1 huwa l-indirizz loopback tal-container innifsu. Proxy li jisma’ fuq il-localhost tal-laptop tiegħek ma jismax awtomatikament ġewwa kull container.
Dan jispjega differenza komuni: l-istess URL ta’ proxy jaħdem fit-terminal tal-host iżda l-konnessjoni tiġi rrifjutata fil-container. L-indirizz jirreferi għal endpoint tan-netwerk differenti f’kull post.
Proxy pubbliku jista’ jintuża direttament
Jekk l-endpoint magħżul minn servizz jew mil-lista ta’ proxies HTTP huwa tassew IP pubbliku li jista’ jintlaħaq, għaddi dak l-indirizz lill-applikazzjoni minflok tibdlu f’localhost:
docker run --rm \
-e HTTP_PROXY=http://203.0.113.10:8080 \
-e HTTPS_PROXY=http://203.0.113.10:8080 \
your-image
Ibdel l-indirizz ta’ eżempju tad-dokumentazzjoni u l-image. Il-programm fl-image xorta jrid jappoġġa dawn il-varjabbli tal-ambjent; Docker ma jibdilx kull socket f’talba permezz ta’ proxy sempliċement għax il-varjabbli jeżistu.
Jekk il-proxy jaħdem fuq il-host ta’ Docker
Docker Desktop jipprovdi host.docker.internal biex jintlaħaq l-indirizz intern tal-host. F’konfigurazzjoni nattiva ta’ Engine appoġġata, immappjar tal-host jista’ jipprovdi dan l-isem konvenzjonali:
docker run --rm \
--add-host host.docker.internal=host-gateway \
-e HTTP_PROXY=http://host.docker.internal:8080 \
-e HTTPS_PROXY=http://host.docker.internal:8080 \
your-image
Dan ibiddel ir-riżoluzzjoni tal-ismijiet; mhuwiex kmand għat-trażmissjoni tal-portijiet. Fuq Linux nattiv, servizz marbut biss mal-loopback tal-host jista’ jibqa’ ma jintlaħaqx mill-indirizz bridge tal-host. Il-listener, il-firewall u r-rotta tal-container iridu jippermettu dik il-konnessjoni. Jekk tibdel il-listener, illimitah għall-klijenti li jeħtieġu aċċess minflok toħloq proxy miftuħ mingħajr awtentikazzjoni.
Ittestja mill-istess post bħall-applikazzjoni
Riżultat ta’ curl fuq il-host jittestja biss ir-rotta tal-host. Agħmel it-talba rilevanti mill-ambjent tal-container u ara jekk tilħaqx l-endpoint maħsub.
“Host” ifisser ukoll il-magna li tħaddem Docker Engine. B’Engine remot, din mhix bilfors il-laptop tiegħek. Għalhekk huwa partikolarment improbabbli li IP loopback ikkupjat minn applikazzjoni desktop lokali jaħdem mingħajr tibdil fuq builder jew server remot.
Żomm separati l-problemi tat-tniżżil tal-image: id-daemon iniżżel l-image qabel l-applikazzjoni tkun tista’ tuża l-ambjent muri hawn fuq.