Sobes.tech
Junior

Τι είναι το module δικτυακής κοντέινερς στο Docker;

sobes.tech AI

Απάντηση από AI

Το Module Δικτύου Κοντέινερ (Container Network Module, CNM) είναι μια προδιαγραφή του Docker που ορίζει το μοντέλο αλληλεπίδρασης μεταξύ των κοντέινερ και του εξωτερικού κόσμου. Αποτελείται από τρεις βασικές primitive:

  • Sandbox: Η δικτυακή στοίβα του κοντέινερ, που περιλαμβάνει τις διεπαφές του, τους πίνακες δρομολόγησης και το DNS.
  • Endpoint: Το σημείο σύνδεσης του Sandbox στο δίκτυο.
  • Network: Το τμήμα δικτύου στο οποίο μπορούν να συνδεθούν τα Endpoints. Τα κοντέινερ στο ίδιο δίκτυο μπορούν να επικοινωνούν μεταξύ τους.

Το CNM παρέχει μια διεπαφή plugin που επιτρέπει σε διαφορετικούς οδηγούς να υλοποιήσουν λειτουργίες δικτύου. Το Docker Engine διαχειρίζεται τα Sandbox και Endpoints, ενώ οι οδηγοί δικτύου είναι υπεύθυνοι για τη δημιουργία και διαμόρφωση των δικτύων.

Παραδείγματα ενσωματωμένων οδηγών δικτύου του Docker:

  • bridge: Δημιουργεί ένα NAT δίκτυο για κοντέινερ, που μπορούν να επικοινωνούν μεταξύ τους και με τον εξωτερικό κόσμο μέσω της IP του host.
  • host: Το κοντέινερ χρησιμοποιεί άμεσα το δικτυακό στοίβα του host.
  • none: Το κοντέινερ δεν διαθέτει διεπαφή δικτύου.
  • overlay: Δημιουργεί ένα κατανεμημένο δίκτυο μεταξύ πολλαπλών Docker hosts για υπηρεσίες swarm.

Παράδειγμα δημιουργίας δικτύου bridge:

docker network create my_bridge_network

Σύνδεση ενός κοντέινερ σε αυτό το δίκτυο:

docker run -d --network my_bridge_network nginx