Dockeri konteineri vaikimisi võrk on silla kujul (samas LAN-is kui host, kuid kasutades eraldi LAN-i IP-d), kui programm töötab tootmiskeskkonnas, piisab ainult vastava teenuseaadressi seadistamisest, et ühenduda andmebaasi, redisiga jne.
Arenduskeskkonnas, kui teenus töötab dockeris ja andmebaas lokaalselt, pole 127.0.0.1 seadistamine lihtne kasutada.
Seda saab lahendada kahel viisil.
Lahendus 1:
Käsitlege hostmasinat ja konteinerit kui kahte eraldi masinat ning seadistage hosti LAN IP või avalik IP aadressi seadistamisel.
Lahendus 2:
Kirjuta hosti aadress otse kujul: host.docker.internalTeine meetod nõuab dockeri versiooni suuremat kui 18.03 ning peab olema saadaval Windowsis ja Macis。
Selleks, et testida, kas need kaks meetodit pääsevad hostile ligi, saate otse dockeriga käivitada pildi, et pingida käsureale:
Nagu ülalolevalt pildilt näha, konteinerite ligipääshost.docker.internalSa pääsed hosti teenusele ligi, kontrollides /etc/hosts faili, leiad, et domeeninime ümbersuunamist ei ole ja sa ei tea dockeri konkreetset aluspõhimõtet.
Nii host kui ka konteiner pääsevad hosti teenustele ligi aadressil host.docker.internal, kuid pingikäskluse kaudu tagastatav aadress on erinev, järgmiselt:
|