Isännän välityspalvelimeen Docker-bridge-kontista
Valitse kontista tavoitettava välityspalvelinosoite ja erota julkinen päätepiste Docker-isännällä toimivasta välityspalvelimesta.
Tavallisessa bridge-verkon kontissa 127.0.0.1 on kontin oma loopback-osoite. Kannettavan localhostissa kuunteleva välityspalvelin ei automaattisesti kuuntele joka kontin sisällä.
Tämä selittää tavallisen eron: sama välityspalvelin-URL toimii isännän päätteessä mutta antaa kontissa yhteyden torjunnan. Osoite tarkoittaa kummassakin paikassa eri verkkopäätepistettä.
Julkista välityspalvelinta voi käyttää suoraan
Jos palvelusta tai HTTP-välityspalvelinluettelosta valittu päätepiste on todella tavoitettava julkinen IP, anna se sovellukselle äläkä muuta sitä localhostiksi:
docker run --rm \
-e HTTP_PROXY=http://203.0.113.10:8080 \
-e HTTPS_PROXY=http://203.0.113.10:8080 \
your-image
Korvaa dokumentaatio-osoite ja levykuva. Levykuvan ohjelman on silti tuettava ympäristömuuttujia; Docker ei muuta jokaista socketia välityspalvelinpyynnöksi vain muuttujien olemassaolon vuoksi.
Jos välityspalvelin toimii Docker-isännällä
Docker Desktop tarjoaa host.docker.internal-nimen isännän sisäisen osoitteen tavoittamiseen. Tuetussa natiivissa Engine-kokoonpanossa isäntämääritys voi tarjota tämän vakiintuneen nimen:
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
Tämä muuttaa nimenselvitystä eikä ole porttien välityskomento. Natiivissa Linuxissa vain isännän loopbackiin sidottu palvelu voi yhä jäädä tavoittamatta isännän bridge-osoitteesta. Kuuntelijan, palomuurin ja kontin reitin täytyy sallia yhteys. Rajaa muutettu kuuntelija tarvittaviin asiakkaisiin äläkä luo avointa välityspalvelinta ilman todennusta.
Testaa sovelluksen omasta ympäristöstä
Isännän curl-tulos testaa vain isännän reitin. Tee pyyntö konttiympäristöstä ja tarkista, saavuttaako se tarkoitetun päätepisteen.
‘Isäntä’ tarkoittaa myös Docker Engineä suorittavaa konetta. Etä-Engineä käytettäessä se ei välttämättä ole kannettavasi. Paikallisesta työpöytäsovelluksesta kopioitu loopback-IP toimii siksi erityisen epätodennäköisesti sellaisenaan etärakentajassa tai palvelimessa.
Pidä levykuvan nouto-ongelmat erillään: taustapalvelu lataa levykuvan ennen kuin sovellus voi käyttää yllä olevaa ympäristöä.