Heim Betrieb und Instandhaltung Docker Was soll ich tun, wenn der von Docker erstellte Webport blockiert ist?

Was soll ich tun, wenn der von Docker erstellte Webport blockiert ist?

Apr 18, 2023 pm 02:07 PM

Docker ist eine sehr beliebte Open-Source-Containerisierungs-Engine, die häufig in Entwicklungs- und Produktionsumgebungen verwendet wird, da sie schnell erstellt und einfach verwaltet werden kann und die Portabilität von Anwendungen gewährleistet. Wenn Sie Docker zum Erstellen einer Webanwendung verwenden, kommt es jedoch nicht selten vor, dass Ports nicht kommunizieren können. Heute werden wir die Gründe und Lösungen für den von Docker erstellten blockierten Webport analysieren.

1. Ursachenanalyse

  1. Firewall-Ursache

Der iptables-Firewall-Dienst ist im Linux-System standardmäßig aktiviert. Wenn Sie ihn nicht konfiguriert haben, verhindert die Firewall möglicherweise die Kommunikation Ihres Docker-Containers mit dem externen Netzwerk. Daher können Sie die Firewall deaktivieren oder Regeln hinzufügen, damit Docker reibungslos mit dem externen Netzwerk kommunizieren kann. Das Folgende ist ein Referenzbefehl:

Schließen Sie die Firewall: $ sudo service iptables stop

Öffnen Sie den Port: $ sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

  1. Der Grund für die Portzuordnung

Nachdem Docker den Container gestartet hat, wird der Port im Container über die Portzuordnung einem Port auf dem Host zugeordnet, um die Kommunikation zwischen dem Container und dem externen Netzwerk zu erreichen. Standardmäßig ist das Netzwerk des Containers unabhängig und kommuniziert nur intern. Wenn Sie die Ports im Container nicht zuordnen, kann es daher sein, dass der Port nicht kommunizieren kann. Das Folgende ist die Standard-Portzuordnungsmethode:

$ docker run -p 80:80 Bildname

  1. Container-Netzwerkprobleme

Es gibt drei Netzwerktreiber in Docker, nämlich Bridge, Host und keiner. Bei der Verwendung von Docker-Containern wird standardmäßig der Bridge-Netzwerktreiber verwendet, der ein virtuelles Netzwerk basierend auf dem NAT-Netzwerk bildet. Wenn Ihr Container nicht auf das externe Netzwerk zugreifen kann, müssen Sie möglicherweise überprüfen, ob Ihr Netzwerktreiber richtig ausgewählt ist. Sie können den folgenden Befehl verwenden, um den Netzwerktreiber anzuzeigen:

$ docker network ls

  1. Problem mit der Container-IP-Adresse

Nachdem Docker den Container gestartet hat, weist er basierend auf dem Netzwerktreiber eine eindeutige IP-Adresse zu. Wenn Ihre Container-IP-Adresse nicht auf das externe Netzwerk zugreifen kann, müssen Sie prüfen, ob die daran angeschlossene Netzwerkkarte richtig konfiguriert ist. Im folgenden Beispiel sehen wir, dass die IP-Adresse des Containers 172.17.0.2 lautet:

$ docker inspect container-name | Sie können die folgende Methode verwenden, um die Portzuordnungsbeziehung zu überprüfen:

$ Docker-Port-Containername

    Der Ausgabeinhalt sollte sein:
  1. 80/tcp -> 0.0.0.0:80

Der obige Befehl kann die Portzuordnung überprüfen innerhalb des Containers zum Host-Port.

Bestätigen Sie, ob der Netzwerktreiber richtig ausgewählt ist

Sie können die folgende Methode verwenden, um den vom Container verwendeten Netzwerktyp zu überprüfen:

$ docker inspect container-name |. Wenn die Ausgabe Bridge ist, ist dies der Fall bedeutet, dass der Netzwerktreiber richtig ausgewählt wurde. Wenn die Ausgabe Host oder None ist, können Sie sie wie folgt ändern:

    Ändern Sie den Netzwerktyp in Bridge:
  1. $ docker run --network Bridge Image-Name

Bestätigen Sie, ob die Firewall ausgeschaltet ist oder die Regeln deaktiviert sind richtig eingestellt

Okay. Fügen Sie beim Ausführen des Docker-Befehls einen --privileged-Parameter hinzu, damit der Docker-Container relativ hohe Berechtigungen hat:

$ docker run --privileged image-name

Bestätigen Sie, ob die Container-IP-Adresse korrekt ist
  1. Sie können den folgenden Befehl verwenden, um die Container-IP-Adresse zu überprüfen:

$ docker inspect container-name |.

Wenn sich Ihre Container-IP-Adresse ändert, können Sie den folgenden Befehl verwenden, um eine eindeutige IP-Adresse neu zuzuweisen:

    $ docker run --ip 172.17.0.10 image -name
  1. Kurz gesagt: Wenn der von Ihrem Docker gestartete Webanwendungsport nicht kommunizieren kann, sollten Sie zunächst untersuchen, was diese Situation verursacht, und dann das Problem auf die entsprechende Weise lösen. Ich hoffe, dieser Artikel kann allen helfen.

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn der von Docker erstellte Webport blockiert ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1662
14
PHP-Tutorial
1262
29
C#-Tutorial
1235
24
So verlassen Sie den Container mit Docker So verlassen Sie den Container mit Docker Apr 15, 2025 pm 12:15 PM

Vier Möglichkeiten zum Beenden von Docker Container: Verwenden Sie Strg D im Befehl Container Terminal ENGEBOT IM Container Terminal verwenden Sie Docker Stop & lt; container_name & gt; Befehl verwenden Sie Docker Kill & lt; container_name & gt; Befehl im Host -Terminal (Force Exit)

So kopieren Sie Dateien in Docker nach außen So kopieren Sie Dateien in Docker nach außen Apr 15, 2025 pm 12:12 PM

Methoden zum Kopieren von Dateien in externen Hosts in Docker: Verwenden Sie den Befehl Docker CP: Docker CP [Optionen] & lt; Containerpfad & gt; & lt; Host -Pfad & gt;. Verwenden von Datenvolumina: Erstellen Sie ein Verzeichnis auf dem Host und verwenden Sie den Parameter -V, um das Verzeichnis in den Container zu montieren, um den Container zu erstellen, um eine bidirektionale Dateisynchronisation zu erreichen.

So starten Sie einen Container von Docker So starten Sie einen Container von Docker Apr 15, 2025 pm 12:27 PM

Startschritte des Docker -Containers: Ziehen Sie das Containerbild: Führen Sie "Docker Pull [Mirror Name]" aus. Erstellen eines Containers: Verwenden Sie "Docker erstellen [Optionen] [Spiegelname] [Befehle und Parameter]". Starten Sie den Container: Führen Sie "Docker Start [Container Name oder ID]" aus. Containerstatus überprüfen: Stellen Sie sicher, dass der Container mit "Docker PS" ausgeführt wird.

So starten Sie Docker neu So starten Sie Docker neu Apr 15, 2025 pm 12:06 PM

So starten Sie den Docker -Container neu: Holen Sie sich die Container -ID (Docker PS); Stop den Container (Docker Stop & lt; Container_id & gt;); Starten Sie den Container (Docker start & lt; container_id & gt;); Stellen Sie sicher, dass der Neustart erfolgreich ist (Docker PS). Andere Methoden: Docker Compose (Docker-Compose Neustart) oder Docker-API (siehe Docker-Dokumentation).

So überprüfen Sie den Namen des Docker -Containers So überprüfen Sie den Namen des Docker -Containers Apr 15, 2025 pm 12:21 PM

Sie können den Namen des Docker -Containers abfragen, indem Sie den Schritten folgen: Alle Container auflisten (Docker PS). Filtern Sie die Containerliste (unter Verwendung des GREP -Befehls). Ruft den Containernamen ab (befindet sich in der Spalte "Namen").

So starten Sie MySQL von Docker So starten Sie MySQL von Docker Apr 15, 2025 pm 12:09 PM

Der Prozess des Startens von MySQL in Docker besteht aus den folgenden Schritten: Ziehen Sie das MySQL -Image zum Erstellen und Starten des Containers an, setzen

So erstellen Sie Container für Docker So erstellen Sie Container für Docker Apr 15, 2025 pm 12:18 PM

Erstellen Sie einen Container in Docker: 1. Ziehen Sie das Bild: Docker Pull [Spiegelname] 2. Erstellen Sie einen Container: Docker Ausführen [Optionen] [Spiegelname] [Befehl] 3. Starten Sie den Container: Docker Start [Containername]

So aktualisieren Sie das Bild von Docker So aktualisieren Sie das Bild von Docker Apr 15, 2025 pm 12:03 PM

Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

See all articles