For ein vanleg container med bridgenettverk er 127.0.0.1 loopbackadressa til containeren sjølv. Ein proxy på localhost på den berbare lyttar ikkje automatisk inne i kvar container.

Dette forklarer eit vanleg sprik: Same proxy-URL verkar i vertsterminalen, men gjev avvist samband i containeren. Adressa viser til ulike nettverksendepunkt på kvar stad.

Ein offentleg proxy kan brukast direkte

Er endepunktet frå ei teneste eller HTTP-proxylista verkeleg ein tilgjengeleg offentleg IP, gje adressa til programmet i staden for å endre henne til localhost:

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

Byt dokumentasjonsadressa og imaget. Programmet i imaget må framleis støtte miljøvariablane; Docker gjer ikkje kvar socket til ein proxyførespurnad berre fordi variablane finst.

Dersom proxyen køyrer på Docker-verten

Docker Desktop tilbyr host.docker.internal for å nå den interne adressa til verten. I eit støtta nativt Engine-oppsett kan ei vertstilordning gje dette vanlege namnet:

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

Dette endrar namneoppløysing, ikkje portvidaresending. På nativ Linux kan ei teneste bunden berre til loopback på verten framleis vere utilgjengeleg via bridgeadressa. Lyttar, brannmur og containerrute må tillate sambandet. Avgrens ein endra lyttar til nødvendige klientar framfor å lage ein open proxy utan autentisering.

Test frå same stad som programmet

Eit curl-resultat på verten testar berre vertsruta. Gjer førespurnaden frå containermiljøet og sjekk om det rette endepunktet vert nådd.

‘Vert’ tyder òg maskina som køyrer Docker Engine. Med ein ekstern Engine er det ikkje nødvendigvis den berbare di. Ein loopback-IP frå ei lokal skrivebordsapplikasjon er difor særleg lite sannsynleg å fungere uendra på ein ekstern byggjar eller tenar.

Hald image-pull-problem fråskilde: daemonen lastar ned imaget før programmet kan bruke miljøet ovanfor.

Relaterte artiklar