Mewn cynhwysydd arferol ar rwydwaith bridge, 127.0.0.1 yw cyfeiriad dolen nôl y cynhwysydd ei hun. Nid yw procsi sy’n gwrando ar localhost eich gliniadur yn gwrando’n awtomatig y tu mewn i bob cynhwysydd.

Mae hyn yn esbonio gwahaniaeth cyffredin: mae’r un URL procsi yn gweithio mewn terfynell ar y gwesteiwr ond mae’r cysylltiad yn cael ei wrthod yn y cynhwysydd. Mae’r cyfeiriad yn cyfeirio at bwynt terfyn rhwydwaith gwahanol ym mhob lle.

Gellir defnyddio procsi cyhoeddus yn uniongyrchol

Os yw’r pwynt terfyn a ddewiswyd o wasanaeth neu’r rhestr procsi HTTP yn IP cyhoeddus y gellir ei gyrraedd mewn gwirionedd, rhowch y cyfeiriad hwnnw i’r rhaglen yn hytrach na’i droi’n localhost:

docker run --rm \
  -e HTTP_PROXY=http://203.0.113.10:8080 \
  -e HTTPS_PROXY=http://203.0.113.10:8080 \
  your-image

Disodlwch gyfeiriad enghreifftiol y ddogfennaeth a’r ddelwedd. Mae angen i’r rhaglen yn y ddelwedd gefnogi’r newidynnau amgylchedd hyn o hyd; nid yw Docker yn troi pob soced yn gais drwy brocsi dim ond am fod y newidynnau’n bodoli.

Os yw’r procsi’n rhedeg ar westeiwr Docker

Mae Docker Desktop yn darparu host.docker.internal i gyrraedd cyfeiriad mewnol y gwesteiwr. Mewn gosodiad Engine brodorol a gefnogir, gall mapio gwesteiwr ddarparu’r enw arferol hwn:

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

Mae hyn yn newid datrys enwau; nid gorchymyn anfon pyrth ymlaen ydyw. Ar Linux brodorol, gall gwasanaeth sydd wedi’i rwymo i gyfeiriad dolen nôl y gwesteiwr yn unig fod yn anhygyrch o hyd drwy gyfeiriad bridge y gwesteiwr. Rhaid i’r gwrandäwr, y wal dân a llwybr y cynhwysydd ganiatáu’r cysylltiad. Os newidiwch y gwrandäwr, cyfyngwch ef i’r cleientiaid sydd angen mynediad yn hytrach na chreu procsi agored heb ddilysu.

Profwch o’r un lle â’r rhaglen

Dim ond llwybr y gwesteiwr y mae canlyniad curl ar y gwesteiwr yn ei brofi. Gwnewch y cais perthnasol o amgylchedd y cynhwysydd a gwiriwch a yw’n cyrraedd y pwynt terfyn a fwriadwyd.

Mae “gwesteiwr” hefyd yn golygu’r peiriant sy’n rhedeg Docker Engine. Gydag Engine pell, nid eich gliniadur yw hwn o reidrwydd. Felly mae’n arbennig o annhebygol y bydd IP dolen nôl a gopïwyd o raglen bwrdd gwaith leol yn gweithio heb ei newid ar adeiladwr neu weinydd pell.

Cadwch broblemau lawrlwytho delweddau ar wahân: mae’r ellyll yn lawrlwytho’r ddelwedd cyn y gall y rhaglen ddefnyddio’r amgylchedd a ddangosir uchod.

Erthyglau cysylltiedig