Docker implementiert Container-Portbindung am lokalen Port

Docker implementiert Container-Portbindung am lokalen Port

Heute bin ich auf ein kleines Problem gestoßen: Nachdem ich das Bild gestartet hatte, konnte ich nicht über eine HTTP-Anforderung darauf zugreifen. Lassen Sie uns die Lösung aufzeichnen und teilen:

Allgemeine Docker-Startbefehle und -Lösungen sind wie folgt:

1. Docker starten

Wie wir alle wissen, lautet der Befehl zum Starten des Containers wie folgt:

Docker-Ausführungsimagename

2. Containerhäfen an lokale Häfen binden

Nach dem Starten des Containers kann nicht direkt auf den lokalen Port zugegriffen werden. Daher muss der lokale Port an den Container-Port gebunden werden, damit über den lokalen Port auf den Container zugegriffen werden kann. Die Einstellungen lauten wie folgt:

docker run -p lokaler Port: Container-Port-Image-Name

Anschließend können Sie über den lokalen Port über den lokalen Browser auf den Container zugreifen.

3. Der Container läuft im Hintergrund. Fügen Sie den Parameter -d hinzu. Der Befehl lautet wie folgt:

docker run -d -p lokaler Port: Container-Port-Image-Name

4. Zeigen Sie die Spiegelliste an. Der Befehl lautet wie folgt

Docker-Image ls
oder Docker-Images

5. Zeigen Sie den laufenden Container an. Der Befehl lautet wie folgt

Docker PS

Ergänzung: Docker ordnet lokale Ports laufenden Containern zu

1. Senden Sie den laufenden Container als Image (damit verschiedene Vorgänge im Container nicht verloren gehen).

Docker-Commit Tang Tang1
### tang (Name des laufenden Containers) tang1 (Name des generierten Images)

2. Ausführen des Images und Hinzufügen von Ports

docker run -d -it -p 8000:80 tang1:latest /bin/bash
### Das kleine p ist der benutzerdefinierte Port und latest ist die Bezeichnung des Bildes (es ist besser, etwas Professionelles zu schreiben)

Ergänzung: Docker lädt Volume und bindet Port

Erfordern

Das Docker-Image wurde erhalten. Jetzt möchten Sie einen Container erstellen, das lokale Verzeichnis in das Containerverzeichnis laden und die Ports zwischen dem lokalen Verzeichnis und dem Container zuordnen.

Konkrete Beispiele sind:

Bild-ID: 884e0fc83dfe

Containernamen festlegen: Test

Ordnen Sie den lokalen Port 9000 dem Port 80 des Containers zu.

Laden Sie das Datenvolumen volume: Ordnen Sie das lokale ~/Desktop/test dem /test-Verzeichnis des Containers zu

erreichen

docker run -it --name test -v ~/Desktop/test:/test -p 9000:80 884e0fc83dfe /bin/bash
# Geben Sie den neuen Container ein
Docker-Starttest
Docker-Anfügetest

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Verwenden Sie Nicht-Root-Benutzer, um Skriptvorgänge in Docker-Containern auszuführen
  • Lösung für den Docker-Container, der keine Schreibberechtigung für das Host-Verzeichnis hat
  • Lösen Sie das Problem beim Einrichten des chinesischen Sprachpakets für den Docker-Container
  • Lösung für Docker-Container, der Schriftarten wie Songti nicht erkennt
  • Anleitung zur Vermeidung von Docker Win Ping-Fehlern bei Containern
  • So konfigurieren Sie ein Jupyter-Notebook im Docker-Container
  • Lösen Sie das Problem, dass der Container nach dem Docker-Lauf „Beendet (0)“ anzeigt.
  • Docker verwendet Root, um in den Container zu gelangen

<<:  Methode zur Behebung von IE6-Space-Bugs

>>:  Detaillierte Erklärung der Schleifenverwendung in Javascript-Beispielen

Artikel empfehlen

Gründe, warum MySQL den Abfrage-Cache abgebrochen hat

MySQL hatte zuvor einen Abfragecache, Query Cache...

Anzeigemodus von Elementen in CSS

In CSS werden Element-Tags entsprechend den unter...

So verfolgen Sie Benutzer mit JS

Inhaltsverzeichnis 1. Synchrones AJAX 2. Asynchro...

Zusammenfassung der Verwendung von TypeScript in React-Projekten

Vorwort Dieser Artikel konzentriert sich auf die ...

So lösen Sie das Problem, dass MySQL nicht geschlossen werden kann

Lösung, wenn MySQL nicht geschlossen wird: Klicke...

Tutorial zur HTML-Tabellenauszeichnung (1): Erstellen einer Tabelle

<br />Dies ist eine Reihe von Tutorials, die...

Bringen Sie Ihnen bei, wie Sie ein React+Antd-Projekt von Grund auf erstellen

Bei den vorherigen Artikeln handelte es sich um m...

Vue implementiert bidirektionale Datenbindung

In diesem Artikelbeispiel wird der spezifische Co...

Detaillierte Erläuterung der Verwendung des DockerHub-Image-Repository

Bisher wurden die von uns verwendeten Images alle...

Vue3.0+vite2 implementiert dynamisches asynchrones Lazy Loading von Komponenten

Inhaltsverzeichnis Erstellen Sie ein Vite-Projekt...

CSS3-Filtercode zum Erreichen des Grau- oder Schwarzmodus auf Webseiten

Frontend css3.filter kann nicht nur den Graueffek...