In Docker bedeutet Prozessisolation, dass jeder Container in seiner eigenen Prozessumgebung ausgeführt wird. Docker verwendet hauptsächlich den Namespace der Linux-Kernel-Technologie, um eine Isolationslösung zu erreichen.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-Version 19.03, Dell G3-Computer.
Prozessisolation: Jeder Container wird in seiner eigenen Prozessumgebung ausgeführt Lösung. Systemressourcen wie PID, IPC und Netzwerk sind nicht mehr global, sondern gehören zu einem bestimmten Namespace.
Die Ressourcen unter jedem Namespace sind transparent und für die Ressourcen unter anderen Namespaces unsichtbar. Daher gibt es auf Betriebssystemebene mehrere Prozesse mit derselben PID. Es können zwei Prozesse mit den Prozessnummern 0, 1 und 2 gleichzeitig im System vorhanden sein. Da sie zu unterschiedlichen Namensräumen gehören, besteht kein Konflikt zwischen ihnen. Auf Benutzerebene sind nur Ressourcen sichtbar, die zum eigenen Namespace des Benutzers gehören. Mit dem Befehl ps können beispielsweise nur Prozesse unter dem eigenen Namespace des Benutzers aufgelistet werden. Auf diese Weise sieht jeder Namespace wie ein separates Linux-System aus.
Prozessisolation
Starten Sie einen Container
docker run -it -p 8080:8080 --name pai-sn pai-sn:snapshot /bin/bash
-it interaktiver Start, -p Portzuordnung, –name Auf den Containernamen folgt der Bildname, öffnen Sie die Shell und geben Sie den Container nach dem Start ein Sehen Sie sich das an Prozess
ps -ef
Verwenden Sie den oberen Befehl, um Prozessressourcen anzuzeigen
Zeigen Sie den Prozess des aktuell ausgeführten Containers auf dem Host-Computer an ps -ef|grep pai-sn
Empfohlenes Lernen: „
Docker-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWas bedeutet Docker-Prozessisolation?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!