Docker stellt über einen Port eine Verbindung zu einem Container her

Docker stellt über einen Port eine Verbindung zu einem Container her

Docker-Container-Verbindung

1. Netzwerk-Port-Mapping

Wir erstellen einen Container für eine Python-Anwendung

# docker run -d -P training/webapp python app.py

Wir erstellen einen Container mit dem Parameter -P und verwenden Docker PS, um zu sehen, dass Port 5000 an Host-Port 32768 gebunden ist

Wir können auch das Flag -p verwenden, um anzugeben, dass der Container-Port an den Host-Port gebunden werden soll.

Der Unterschied zwischen den beiden Methoden ist:

-P: Der interne Port des Containers wird zufällig dem High-Port des Hosts zugeordnet.

-p: Binden Sie den internen Port des Containers an den angegebenen Host-Port.

…… ...

# docker run -d -p 5000:5000 Training/Webanwendung Python app.py

Darüber hinaus können wir die an den Container gebundene Netzwerkadresse angeben, z. B. die Bindung 127.0.0.1

# docker run -d -p 127.0.0.1:5001:5000 Training/Webanwendung Python app.py

Auf diese Weise können wir auf Port 5000 des Containers zugreifen, indem wir auf 127.0.0.1:5001 zugreifen

Standardmäßig sind Container an TCP-Ports gebunden. Wenn Sie eine Bindung an UDP-Ports wünschen, können Sie nach dem Port /udp hinzufügen.

# docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py

Mit dem Befehl docker port <images id> [port] können wir schnell den Status der Portbindung anzeigen

Docker-Port ce206e3c0ae6 5000

Nun fahren wir alle anderen Container herunter und starten einen neuen nginx-Container

# docker run -d -p 5000:80 --name web111 nginx

Wir leiten den Port 80 des Containers auf den lokalen Port 5000 weiter und greifen dann extern darauf zu

Sie können sehen, dass wir erfolgreich darauf zugreifen können, was darauf hinweist, dass der Port weitergeleitet wird.

2. Docker-Container-Verbindung

Die Portzuordnung ist nicht die einzige Möglichkeit, Docker mit einem anderen Container zu verbinden.

Docker verfügt über ein Verbindungssystem, das es ermöglicht, mehrere Container miteinander zu verbinden und Verbindungsinformationen auszutauschen.

Eine Docker-Verbindung erstellt eine Eltern-Kind-Beziehung, bei der der übergeordnete Container die Informationen des untergeordneten Containers sehen kann.

3. Container-Benennung

Wenn wir einen Container erstellen, benennt Docker ihn automatisch. Wir können aber auch das Flag --name verwenden, um den Container zu benennen

docker run -d -P --name Peithon training/webapp python app.py

Zusatzwissen: So zeigen Sie an, welche Ports in einem Docker-Container geöffnet sind

Sie müssen den Container Bash nicht aufrufen. Geben Sie einfach die Docker-Port-Container-ID in die Linux-Befehlszeile ein, um sie anzuzeigen

Der obige Artikel darüber, wie man einen Container über einen Port in Docker verbindet, ist alles, was ich mit Ihnen teilen kann. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • Lösung für mehrere Docker-Container, die nicht die gleiche Portnummer haben
  • So ändern Sie die Portzuordnung eines laufenden Docker-Containers
  • So ändern Sie die Container-Portzuordnung in Docker dynamisch
  • Perfekte Lösung für das Problem, unter Windows 10 nicht auf den Port des Docker-Containers zugreifen zu können
  • Docker stellt Containern dynamisch Ports zur Verfügung
  • Lösung, wenn der Docker-Container nicht auf den Host-Port zugreifen kann
  • Docker implementiert Container-Portbindung am lokalen Port

<<:  JS realisiert Spezialeffekte der Webseiten-Navigationsleiste

>>:  Detaillierte Erklärung zum MySQL-Datenarchivierungstool mysql_archiver

Artikel empfehlen

js native Karussell-Plugin-Produktion

In diesem Artikel wird der spezifische Code für d...

JavaScript imitiert den Jingdong-Karusselleffekt

In diesem Artikel wird der spezifische Code für J...

NULL und leere Zeichenfolge in MySQL

Ich bin vor kurzem mit MySQL in Berührung gekomme...

Befehle zum Deaktivieren und Aktivieren von MySQL-Fremdschlüsseleinschränkungen

Deaktivieren und Aktivieren von MySQL-Fremdschlüs...

Eine schnelle Lösung für den ersten Anmeldefehler in mysql5.7.20

Zunächst stellen wir vor, wie (1) MySQL 5.7 hat e...

Detaillierte Erklärung zur korrekten Öffnung in CSS

Warum sagen wir „normalerweise 1em=16px“? Die vom...

So ändern Sie den Benutzer und die Gruppe einer Datei in Linux

Wenn unter Linux eine Datei erstellt wird, ist de...

Detaillierte Erklärung des Unterschieds zwischen in und exists in MySQL

1. Bereiten Sie sich im Voraus vor Zu Ihrer Beque...