Puncte:1

Încă sunt confuz de ce funcționează docker atunci când faci ca un proces să asculte 0.0.0.0, dar nu 127.0.0.1

drapel ve
const hostname = '0.0.0.0'; // << Aici sunt confuz
const port = 3000;

server const = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Tip de conținut', 'text/plat');
  res.end('Bună lume');
});

server.listen(port, nume gazdă, () => {
  console.log(`Serverul rulează la http://${hostname}:${port}/`);
});

Când dockerizez această aplicație și o rulez într-un container, numele de gazdă 0.0.0.0 funcționează, dar 127.0.0.1 nu funcționează. Înțeleg motivul pentru care containerele docker își au aproape propriul IP.

Deci, când construiesc și rulez containerul când setez variabila nume de gazdă la 127.0.0.1 și apoi vizitez 127.0.0.1 în browserul meu, nu mă conectez la adresa IP a containerului, ci la mașina mea locală.

Dar de ce atunci când rulez aplicația containerizată pe 0.0.0.0 și vizitez 127.0.0.1 în browserul meu, acum se conectează la container în loc de mașina mea locală?

Mulțumesc.

Puncte:2
drapel in

docker este „o mașină diferită” și mașina dvs. primește un port către acea mașină pe localhost.

Deci, atunci când aplicația din interiorul docker ascultă 127.0.0.1 care este valabil numai în interiorul acelei mașini, pentru a vă conecta la ea din „exterior”, trebuie să ascultați orice abordare.

Deci sunt 2 diferite 127.0.0.1.

Dacă asculți orice (0.0.0.0), atunci este disponibil și pe 127.0.0.1 și pe toate celelalte interfețe/IP-uri de pe mașină.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.