Bereik ’n gasheerproxy vanuit ’n Docker-bridgehouer
Kies ’n proxyadres wat die houer kan bereik en onderskei ’n openbare eindpunt van ’n proxy op die Docker-gasheer.
Vir ’n gewone houer op ’n bridgenetwerk is 127.0.0.1 die houer se eie loopback-adres. ’n Proxy op localhost van jou skootrekenaar luister nie outomaties binne elke houer nie.
Dit verklaar ’n algemene verskil: dieselfde proxy-URL werk in die gasheerterminaal maar gee verbinding geweier in die houer. Die adres verwys op elke plek na ’n ander netwerkeindpunt.
’n Openbare proxy kan direk gebruik word
As die eindpunt uit ’n diens of die HTTP-proxylys werklik ’n bereikbare openbare IP is, gee dié adres aan die toepassing eerder as om dit na localhost te verander:
docker run --rm \
-e HTTP_PROXY=http://203.0.113.10:8080 \
-e HTTPS_PROXY=http://203.0.113.10:8080 \
your-image
Vervang die dokumentasieadres en beeld. Die program in die beeld moet steeds dié omgewingsveranderlikes ondersteun; Docker maak nie elke socket ’n proxyversoek bloot omdat die veranderlikes bestaan nie.
As die proxy op die Docker-gasheer loop
Docker Desktop bied host.docker.internal om die gasheer se interne adres te bereik. In ’n ondersteunde inheemse Engine-opstelling kan ’n gasheerkartering dié gebruiklike naam gee:
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
Dit verander naamoplossing, nie poortaanstuur nie. Op inheemse Linux kan ’n diens wat slegs aan gasheerloopback gebind is steeds onbereikbaar wees deur die gasheer se bridge-adres. Die luisteraar, brandmuur en houerroete moet die verbinding toelaat. Beperk ’n veranderde luisteraar tot nodige kliënte eerder as om ’n oop proxy sonder verifikasie te skep.
Toets vanaf dieselfde plek as die toepassing
’n curl-resultaat op die gasheer toets net die gasheerroete. Stuur die versoek uit die houeromgewing en kyk of dit die bedoelde eindpunt bereik.
‘Gasheer’ beteken ook die rekenaar waarop Docker Engine loop. Met ’n afgeleë Engine is dit nie noodwendig jou skootrekenaar nie. ’n Loopback-IP uit ’n plaaslike lessenaartoepassing sal dus besonder onwaarskynlik onveranderd op ’n afgeleë bouer of bediener werk.
Hou beeldaflaaiprobleme apart: die daemon laai die beeld af voordat die toepassing die omgewing hier bo kan gebruik.