Ná í staðgengil á hýsli úr Docker bridge-gámi
Veldu staðgengilsfang sem gámurinn nær í og greindu opinberan endapunkt frá staðgengli á Docker-hýsli.
Í venjulegum gámi á bridge-neti er 127.0.0.1 loopback-vistfang gámsins sjálfs. Staðgengill sem hlustar á localhost á fartölvunni þinni hlustar ekki sjálfkrafa inni í öllum gámum.
Þetta skýrir algengan mun: sama staðgengils-URL virkar í skjáhermi hýsilsins en tengingu er hafnað inni í gámnum. Vistfangið vísar á ólíkan netendapunkt á hvorum stað.
Nota má opinberan staðgengil beint
Ef endapunkturinn sem valinn er úr þjónustu eða HTTP-staðgenglalistanum er raunverulega aðgengilegt opinbert IP-vistfang skaltu gefa forritinu það fang í stað þess að breyta því í localhost:
docker run --rm \
-e HTTP_PROXY=http://203.0.113.10:8080 \
-e HTTPS_PROXY=http://203.0.113.10:8080 \
your-image
Skiptu um dæmisvistfangið úr skjölunum og myndina. Forritið í myndinni þarf enn að styðja þessar umhverfisbreytur; Docker breytir ekki hverri tengistungu í beiðni um staðgengil eingöngu vegna þess að breyturnar eru til staðar.
Ef staðgengillinn keyrir á Docker-hýslinum
Docker Desktop býður host.docker.internal til að ná í innra vistfang hýsilsins. Í studdri uppsetningu á innfæddum Engine getur hýslavörpun veitt þetta hefðbundna heiti:
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
Þetta breytir nafnauppflettingu; þetta er ekki skipun fyrir gáttaáframsendingu. Á innfæddu Linux getur þjónusta sem er aðeins bundin við loopback hýsilsins enn verið óaðgengileg um bridge-vistfang hans. Hlustari, eldveggur og leið gámsins þurfa að leyfa tenginguna. Ef þú breytir hlustaranum skaltu takmarka hann við biðlarana sem þurfa aðgang í stað þess að búa til opinn staðgengil án auðkenningar.
Prófaðu frá sama stað og forritið
curl-niðurstaða á hýslinum prófar aðeins leið hýsilsins. Sendu viðeigandi beiðni úr umhverfi gámsins og athugaðu hvort hún nær til ætlaðs endapunkts.
„Hýsill“ merkir einnig vélina sem keyrir Docker Engine. Með fjarlægum Engine er það ekki endilega fartölvan þín. Því eru sérstaklega litlar líkur á að loopback-IP afritað úr staðbundnu skjáborðsforriti virki óbreytt á fjarlægri smíðavél eða þjóni.
Haltu vandamálum við niðurhal mynda aðskildum: púkinn sækir myndina áður en forritið getur notað umhverfið hér að ofan.