


Welche Möglichkeiten gibt es, den Docker-Container zu betreten?
Es gibt viele Möglichkeiten, einen Docker-Container zu betreten. Hier konzentrieren wir uns auf einige häufig verwendete Methoden zum Eintritt in einen Docker-Container.
(Lernvideo-Sharing: php-Video-Tutorial)
Die gebräuchlichsten Möglichkeiten, den Docker-Container zu betreten, sind wie folgt:
Verwenden Sie Docker Attach
Verwenden Sie SSH
Verwenden Sie nsenter
-
Verwenden Sie exec
1. Verwenden Sie Docker Attach, um auf den Docker-Container zuzugreifen.
Docker stellt den Attach-Befehl bereit, um auf den Docker-Container zuzugreifen.
Als nächstes erstellen wir einen Daemon-Docker-Container und verwenden dann den Docker-Attach-Befehl, um den Container aufzurufen.
$ sudo docker run -itd ubuntu:14.04 /bin/bash
Dann verwenden wir Docker PS, um die Containerinformationen anzuzeigen, und verwenden dann Docker Attach, um den Container einzugeben.
$ sudo docker attach 44fc0f0582d9
Sie können sehen, dass wir den Container eingegeben haben.
Aber es gibt ein Problem bei der Verwendung dieses Befehls. Wenn mehrere Fenster diesen Befehl verwenden, um gleichzeitig in den Container zu gelangen, werden alle Fenster gleichzeitig angezeigt. Wenn ein Fenster blockiert ist, können andere Fenster nicht mehr bedient werden.
Aus diesem Grund ist der Docker-Attach-Befehl nicht für Produktionsumgebungen geeignet. Sie können diesen Befehl bei der Entwicklung Ihrer eigenen Anwendungen verwenden.
2. Verwenden Sie SSH, um den Docker-Container aufzurufen.
Nachdem ich die Verwendung des Docker-Attach-Befehls zum Aufrufen des Containers in der Produktionsumgebung ausgeschlossen habe, denke ich, dass das erste, woran jeder denkt, SSH ist. Installieren Sie den SSH-Server im Image (oder Container), damit mehrere Personen den Container betreten können, ohne sich gegenseitig zu stören. Ich glaube, dass dies jeder in der aktuellen Produktionsumgebung tut (ohne Docker zu verwenden). Es wird jedoch nicht empfohlen, nach der Verwendung SSH zum Aufrufen des Docker-Containers zu verwenden.
3. Verwenden Sie Nsenter, um den Docker-Container aufzurufen.
Wenn die beiden oben genannten Methoden nicht geeignet sind, gibt es eine bequemere Methode, nämlich die Verwendung von Nsenter, um den Docker-Container aufzurufen.
Nachdem das System verstanden hat, was Nsenter ist, installiert es den von uns benötigten Nsenter standardmäßig auf dem Host.
Wenn er nicht installiert ist, befolgen Sie einfach die folgenden Schritte, um ihn zu installieren (beachten Sie, dass es sich um den Host und nicht um den Container handelt). Spiegel)
Spezifische Installationsbefehle wie folgt:
$ wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz $ tar -xzvf util-linux-2.24.tar.gz $ cd util-linux-2.24/ $ ./configure --without-ncurses $ make nsenter $ sudo cp nsenter /usr/local/bin
Nach der Installation von nsenter können Sie die Verwendung dieses Befehls überprüfen.
nsenter kann auf den Namespace eines anderen Prozesses zugreifen. Um eine Verbindung zu einem Container herzustellen, müssen wir also auch die PID des ersten Prozesses des Containers abrufen. Sie können den Befehl docker inspect verwenden, um die PID abzurufen. Der Befehl
Docker Inspect wird wie folgt verwendet: Der Befehl
$ sudo docker inspect --help
Inspect kann die Informationen eines Bildes oder Containers hierarchisch anzeigen. Beispielsweise haben wir derzeit einen laufenden Container.
Sie können Docker Inspect verwenden, um die Details des Containers anzuzeigen.
$ sudo docker inspect 44fc0f0582d9
Es gibt viele Informationen, daher wird hier nur ein Teil zur Anzeige erfasst. Wenn Sie die erste PID des Containers anzeigen möchten, können Sie die folgende Methode verwenden
$ sudo docker inspect -f {{.State.Pid}} 44fc0f0582d9
Nachdem wir die PID des Prozesses erhalten haben, können wir mit dem Befehl nsenter auf den Container zugreifen.
$ sudo nsenter --target 3326 --mount --uts --ipc --net --pid $ sudo nsenter --target 3326 --mount --uts --ipc --net --pid
Der 3326 ist die PID des gerade erhaltenen Prozesses.
4. Verwenden Sie docker exec, um den Docker-Container aufzurufen. Zusätzlich zu den oben genannten Methoden bietet Docker nach Version 1.3 auch einen Blick auf die Verwendung dieses Befehls:
$ sudo docker exec --help
Mit diesem Befehl geben wir einen bereits laufenden Container ein
$ sudo docker ps $ sudo docker exec -it 775c7c9ee1e1 /bin/bash
Verwandte Empfehlungen:
Docker-TutorialDas obige ist der detaillierte Inhalt vonWelche Möglichkeiten gibt es, den Docker-Container zu betreten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Sie können zur Quelle der Inlandsspiegel wechseln. Die Schritte sind wie folgt: 1. Bearbeiten Sie die Konfigurationsdatei /etc/docker/daemon.json und fügen Sie die Spiegelquellenadresse hinzu; 2. Starten Sie den Docker Service Sudo SystemCtl Docker neu, um die Download -Geschwindigkeit und -stabilität des Bilddownloads zu verbessern.

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

Schritte zum Erstellen eines Docker -Images: Schreiben Sie eine Dockerfile, die die Build -Anweisungen enthält. Erstellen Sie das Bild im Terminal mit dem Befehl Docker Build. Markieren Sie das Bild und weisen Sie Namen und Tags mit dem Befehl Docker Tag zu.

Um die Docker -Version zu erhalten, können Sie die folgenden Schritte ausführen: Führen Sie den Befehl Docker "Docker --version" aus, um die Client- und Serverversionen anzuzeigen. Für Mac oder Windows können Sie auch Versionsinformationen über die Registerkarte Version der Docker -Desktop -GUI oder das Menü Docker Desktop anzeigen.

Docker LNMP Container Anrufschritte: Führen Sie den Container aus: Docker Run -d --Name LNMP -Container -P 80:80 -P 443: 443 LNMP -Stack, um den Container IP zu erhalten: Docker Inspecy Lnmp -Container | GREP iPaddress Access Website: http: // & lt; Container IP & gt;/index.phpssh Access: Docker Exec -it lnmp -container Bash Access MySQL: Mysql -U Roo

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).

Sie können Docker -private Repositorys erstellen, um Containerbilder sicher zu speichern und zu verwalten und strenge Kontrolle und Sicherheit bereitzustellen. Zu den Schritten gehören: Erstellen eines Repositorys, Gewährung von Zugriff, Bereitstellung eines Repositorys, Drückens eines Bildes und Ziehen eines Bildes. Zu den Vorteilen gehören Sicherheit, Versionskontrolle, reduzierter Netzwerkverkehr und Anpassung.

Um das Bild in Docker zu speichern, können Sie den Befehl docker comit verwenden, um ein neues Bild zu erstellen, das den aktuellen Status des angegebenen Containers Syntax: Docker Commit [Optionen] Container -ID -Bildname enthält. Um das Bild im Repository zu speichern, können Sie den Befehl Docker Push, Syntax: Docker -Push -Bildname [: Tag] verwenden. Um gespeicherte Bilder zu importieren, können Sie den Befehl Docker Pull, Syntax: Docker Pull Bildname [: Tag] verwenden.
