Container sind ein weiteres Kernkonzept von Docker. Einfach ausgedrückt ist ein Container eine Anwendung oder eine Gruppe von Anwendungen, die unabhängig voneinander ausgeführt werden, sowie deren Betriebsumgebung. Entsprechend kann eine virtuelle Maschine als ein vollständiger Satz simulierter Betriebssysteme (die eine Laufumgebung und andere Systemumgebungen bereitstellen) und der darauf laufenden Anwendungen verstanden werden. Die wichtigsten Vorgänge an Containern sind:
Starten des Containers Es gibt zwei Möglichkeiten. Eine besteht darin, einen neuen Container basierend auf dem Image zu erstellen und ihn zu starten. Die andere besteht darin, den Container im gestoppten Zustand neu zu starten. Erstellen und starten Der erforderliche Befehl ist hauptsächlich „docker run“ Dies ist kaum von der lokalen Ausführung von /bin/echo „Hallo Welt“ zu unterscheiden. Der folgende Befehl startet ein Bash-Terminal und ermöglicht Benutzerinteraktionen wie beispielsweise: docker run -t -i ubuntu:18.04 /bin/bash Mit der Option -t kann Docker ein Pseudo-TTY zuordnen und an die Standardeingabe des Containers binden, während -i die Standardeingabe des Containers geöffnet hält. Was passiert also, wenn wir den Befehl „Docker Run“ verwenden, um einen Container zu erstellen und zu starten?
Wenn wir also das Terminal über Bash aufrufen, betreten wir tatsächlich ein anderes System. Starten eines beendeten Containers Mit dem Befehl „Docker Container Start“ können Sie einen beendeten Container direkt starten. Der Kern des Containers ist die ausgeführte Anwendung und die erforderlichen Ressourcen sind für die Ausführung der Anwendung notwendig. Abgesehen davon gibt es keine weiteren Ressourcen. Sie können ps oder top im Pseudoterminal verwenden, um Prozessinformationen anzuzeigen. Es ist ersichtlich, dass im Container nur die angegebene Bash-Anwendung ausgeführt wird. Durch diese Funktion ist die Ressourcenauslastung von Docker extrem hoch und es handelt sich um eine wirklich leichtgewichtige Virtualisierung. Hintergrundvorgang Häufiger werden wir den Container im Hintergrund ausführen und können dazu den Parameter -d hinzufügen. Das Folgende druckt jede Sekunde „Hallo Welt“. docker run ubuntu:18.04 /bin/sh -c „während wahr; mache echo hallo Welt;sleep 1;fertig“ Wenn Sie den Parameter -d verwenden, um den Container auszuführen, wird er im Hintergrund ausgeführt: Hinweis: Ob der Container über einen längeren Zeitraum ausgeführt wird, hängt mit dem von „docker run“ angegebenen Befehl zusammen und hat nichts mit dem Parameter „-d“ zu tun. Nach dem Start mit dem Parameter -d wird eine eindeutige ID zurückgegeben. Sie können die Containerinformationen auch über den Befehl „Docker Container ls“ anzeigen. Um die Ausgabeinformationen des Containers zu erhalten, können Sie den Befehl „Docker Container Logs“ verwenden. Docker-Container-Protokolle [Container-ID oder -NAMEN] Beenden des Containers Sie können Docker Container Stop oder Docker Stop Container-ID verwenden, um einen laufenden Container zu beenden. Darüber hinaus wird der Container automatisch beendet, wenn die im Docker-Container angegebene Anwendung beendet wird. Container im beendeten Zustand können mit dem Befehl „Docker Container ls -a“ angezeigt werden. Zum Beispiel: Ein beendeter Container kann mit dem Befehl „Docker Container Start“ neu gestartet werden. Darüber hinaus beendet der Befehl „Docker Container Restart“ einen laufenden Container und startet ihn anschließend neu. Betreten des Containers Wenn der Parameter -d verwendet wird, wechselt der Container nach dem Start in den Hintergrund. Manchmal müssen Sie den Container aufrufen, um Vorgänge auszuführen, z. B. mithilfe der Befehle „docker attach“ oder „docker exec“. Aus den unten erläuterten Gründen wird empfohlen, den Befehl „docker exec“ zu verwenden. Befehl „Anhängen“ Hinweis: Wenn Sie diese Standardeingabe beenden, wird der Container angehalten. exec-Befehl Auf Docker Exec können mehrere Parameter folgen. Hier erklären wir hauptsächlich die Parameter -i und -t. Wenn nur der Parameter -i verwendet wird, verfügt die Schnittstelle nicht über die bekannte Linux-Eingabeaufforderung, da kein Pseudoterminal zugewiesen ist, die Ergebnisse der Befehlsausführung können aber trotzdem zurückgegeben werden. Wenn die Parameter -i -t zusammen verwendet werden, wird die bekannte Linux-Eingabeaufforderung angezeigt. Wenn Sie diese Standardeingabe beenden, wird der Container nicht gestoppt. Aus diesem Grund wird die Verwendung von Docker Exec empfohlen. Exportieren und Importieren von Containern Container exportieren Wenn Sie einen lokalen Container exportieren möchten, können Sie den Befehl „Docker Export“ verwenden. Dadurch wird der Container-Snapshot in eine lokale Datei exportiert. Importieren eines Containers Mit Docker Import können Sie beispielsweise eine Container-Snapshot-Datei als Image importieren: cat ubuntu.tar | Docker-Import – Test/Ubuntu:v1.0 Löschen eines Containers Sie können Docker Container RM oder Docker RM Container-ID verwenden, um einen Container im beendeten Zustand zu löschen. Zum Beispiel: Hinweis: Zum Löschen eines Containers muss der Container gestoppt werden. Alle beendeten Container bereinigen Verwenden Sie den Befehl „docker container ls -a“, um alle erstellten Container anzuzeigen, einschließlich der Container im beendeten Zustand. Wenn zu viele Container vorhanden sind, kann es schwierig sein, sie einzeln zu löschen. Verwenden Sie den folgenden Befehl, um alle Container im beendeten Zustand zu bereinigen. $ Docker-Container beschneiden Dieser Vorgang ist ziemlich gefährlich, gehen Sie also mit Vorsicht vor. Bei den oben genannten Vorgängen handelt es sich um allgemeine Vorgänge im Zusammenhang mit Docker-Containern. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Tutorial zum Zurücksetzen des Root-Passworts von Mac MySQL
>>: Das WeChat-Applet implementiert den Serveraufbau des Benutzeranmeldemoduls
Da sich die heimische Netzwerkumgebung immer weit...
So schreiben Sie mithilfe von Filtern transparente...
Es gibt eine Frage, die Webdesigner schon lange b...
1. Laden Sie das Repository-Image herunter Docker...
Es besteht ein Unterschied zwischen src und href ...
Inhaltsverzeichnis 1. Beispielszenario 1.1. Legen...
Vorwort 1. Benchmarking ist eine Art Leistungstes...
Das Problem, dass MYSQL5.7.17 unter MAC keine Ver...
In diesem Artikelbeispiel wird der spezifische Co...
SQL-Paging-Abfrage:Hintergrund Im System des Unte...
1. Fügen Sie das Plug-In hinzu und fügen Sie die ...
Ich habe mir kürzlich die Pressekonferenz von App...
Zusammenfassen Dieser Artikel endet hier. Ich hof...
Inhaltsverzeichnis 1. Gemeinsame Indexbeschreibun...
Quelle: https://medium.com/better-programming, Au...