Führen Sie zuerst den Docker-Container ausFühren Sie den Befehl als Root-Benutzer aussudo docker exec -it -u root ec33c19230ca /bin/bash Ergänzung: Container-Kommandozeile eingeben und im Hintergrund in Docker ausführen In Docker haben wir im Allgemeinen zwei Möglichkeiten, Befehle auszuführen. Eine besteht darin, direkt in die Befehlszeile des Containers zu gehen, im Terminal auszuführen und die Ergebnisse anzuzeigen. Die andere besteht darin, im Hintergrund auszuführen und die Ergebnisse nicht im Terminal anzuzeigen. 1. Geben Sie die Container-Befehlszeile einsu-Wurzel docker run -i -t ubuntu:16.04 /bin/bash #Oder führen Sie den folgenden Satz aus: docker run -it ubuntu:16.04 /bin/bash Der Zweck von -i und -t besteht darin, Ihnen beim Aufrufen des interaktiven Modus zu helfen. Ohne diesen Teil können Sie den Container nicht aufrufen, geschweige denn die Befehlszeile verwenden. /bin/bash bedeutet, dass die Befehlszeile des Containers zum Eingeben von Befehlen verwendet wird. Die Ausführungsergebnisse sind wie folgt: root@7d150a0fb029:/# Auf die Wurzel folgt die Container-ID, die anzeigt, dass Sie den Container betreten haben und Befehle eingeben können. Sie können versuchen, einige gängige Befehle einzugeben: root@7d150a0fb029:/# docker run -i -t ubuntu:16.04 /bin/bash Das Ergebnis gibt die Kernel-Versionsinformationen des Images aus: Linux-Version 4.13.0-36-generic (buildd@lgw01-amd64-033) (gcc-Version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)) #40~16.04.1-Ubuntu SMP Freitag, 16. Februar 2018, 23:25:58 UTC Sie können den Container durch Beenden verlassen. 2. Befehl zur HintergrundausführungGeben Sie den folgenden Code ein, -d bedeutet, dass es im Hintergrund ausgeführt wird. Sie können die Funktion des Befehls direkt über docker run --help anzeigen. Der folgende Satz bedeutet, den Code in Anführungszeichen zum Bildprogramm hinzuzufügen und im Hintergrund auszuführen. docker run -d ubuntu:16.04 /bin/sh -c „während wahr; mache echo hallo Welt; sleep 1; fertig“ Die Ausgabe zeigt nicht das Ergebnis des Laufs, sondern die neu erstellte Container-ID. Hier ist eine Erklärung: Jedes Mal, wenn Sie den Befehl „docker run“ eingeben, wird ein neuer Container erstellt und eine neue ID generiert. Die Ausgabe lautet wie folgt: c7188be9bd7b5c0aa91c5eeb72013996c89bfdc2181d1a5ff7f880af6f8aff99 Schauen Sie sich den laufenden Container an: root@cdl-XPS15R:/home/cdl# docker ps -a CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN c7188be9bd7b ubuntu:16.04 "/bin/sh -c 'while t..." vor 13 Sekunden Vor 11 Sekunden keen_vaughan 1b6ba17f7df7 ubuntu:16.04 "/bin/bash" vor 2 Minuten Beendet (0) vor 2 Minuten cocky_noether 7d150a0fb029 ubuntu:16.04 "/bin/bash" vor 4 Minuten Beendet (0) vor 2 Minuten hopeful_banach Hier können wir feststellen, dass die ersten Ziffern der ID des ersten Containers genau dieselben sind wie die ersten Ziffern der im Hintergrund ausgeführten Container-ID, aber die Länge ist viel länger. Tatsächlich sind sie gleich, aber der Einfachheit halber werden beim Drucken der Ausgabe über den Befehl ps nur die ersten Ziffern angezeigt. Wenn wir in die Kommandozeile des im Hintergrund laufenden Containers einsteigen wollen, ohne einen neuen Container zu erstellen, geben wir einfach folgenden Befehl ein: #exec dient zum Aufrufen eines vorhandenen Containers, run zum Erstellen eines neuen Containers docker exec -it c7188be9bd7b /bin/bash Der gleiche Effekt tritt ein, wenn Sie eine längere ID eingeben: docker exec -it c7188be9bd7b5c0aa91c5eeb72013996c89bfdc2181d1a5ff7f880af6f8aff99 /bin/bash Die Ausgabeergebnisse sind: root@c7188be9bd7b:/# 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:
|
<<: Zusammenfassung des MySQL Undo Log und Redo Log
>>: Verwenden Sie vue2+elementui für Hover-Prompts
Inhaltsverzeichnis Vorwort Kerncode Datei zeigt e...
1. Effekt-HTML senden <div id="senden-btn...
<!DOCTYPE html> <html lang="de"...
1. Oracle ist eine große Datenbank, während MySQL...
Inhaltsverzeichnis 1.Linux-Anmeldeschnittstelle 2...
XML Schema ist eine XML-basierte Alternative zu D...
Vorwort Dieser Artikel stellt hauptsächlich die r...
Wenn die Position absolut ist, wird der Prozentsa...
Die vom Docker abgerufenen Befehle werden standar...
Installations- und Konfigurationsmethode für MySQ...
Der Pseudoklassenselektor :not kann Elemente filt...
Früher hatte fast jede Website eine Sitemap-Seite...
Heute habe ich die MySQL-Datenbank erneut auf mei...
Wenn Sie wissen möchten, wie Sie diese Tabelle mi...
Diese Spezifikationen sollen die Veröffentlichung ...