Wie unterscheidet sich Docker Namespace von Host Namespace und wie kann die PID zwischen diesen beiden zugeordnet werden? Kann jemand mir eine Idee geben, die hilft, pid's zwischen host n docker unter Verwendung des Quellcodes zu kartieren?PID-Zuordnung zwischen Docker und Host
Antwort
Wie ich in "Running docker securely" erwähnt:
Zurzeit verwendet Docker fünf Namespaces Prozessen Ansicht des Systems zu verändern: Prozess, Netzwerk, Berg, Hostnamen, Shared Memory.
Die Tatsache, dass standardmäßig, wie ich in der vorherigen Frage „Docker Namespace in kernel level“ der Behälter pid erwähnt werden vom Host getrennt (es sei denn Sie sie mit --pid host
laufen) ist konstruktionsbedingt.
Wenn Sie --pid=host
verwenden, sind diese Container-PIDs zwar vom Host aus sichtbar, aber nicht einfach mit einem bestimmten Container zu vergleichen, erst wenn issue 10163 and --pid=container:id
aufgelöst ist.
Update Mai 2016: issue 10163 and --pid=container:id
wird tatsächlich von PR 22481 für Docker 1.12 gelöst, so dass der PID-Namespace eines anderen Containers hinzugefügt werden kann.
Sie können die Zuordnung in /proc/PID/status
Datei finden. Es enthält eine Zeile wie:
NSpid: 16950 24
was bedeutet, dass 16950
auf dem Host 24
im Inneren des Behälters ist.
- 1. Was ist der Unterschied zwischen Docker Host und Container
- 2. Docker Container Host Routing
- 3. Docker-Anwendung für Host freigeben
- 4. Anschluss von Host-Docker Container
- 5. Verwaiste Docker Host Volumes montiert?
- 6. Docker für Mac Host-Netzwerk
- 7. Docker mysql Host nicht privilegiert
- 8. Unterschied zwischen Docker und OpenVZ
- 9. Docker und --userns-remap, wie Volume Berechtigungen verwalten, um Daten zwischen Host und Container zu teilen?
- 10. Hinzufügen von Docker Container IP zum Host Rechner/etc/host
- 11. Jenkins in Docker mit Zugriff auf Host-Docker
- 12. Interagieren mit kafka docker Container außerhalb von docker host
- 13. Docker: Zugriff auf mysql im Docker Container mit --net = host Option vom Host
- 14. Wie kann ich Elemente (Bilder, Textdokumente usw.) zwischen meinem Docker-Container und dem Host-System freigeben?
- 15. VDI-Verwendung zwischen Host und Gast inkonsistent
- 16. Was ist der Unterschied zwischen docker und docker-komponieren
- 17. Die Beziehung zwischen "docker/swarm" und "docker/swarmkit"
- 18. Was ist der Unterschied zwischen Docker-Bundles und Docker-Compose?
- 19. Verwenden Sie Host-Netzwerk und zusätzliche Netzwerke in Docker komponieren
- 20. Docker Volumes Bindung: Container zu Host
- 21. --Add-Host-Parameter in Marathon Docker-Anwendung
- 22. Docker - Mount-Verzeichnisses aus dem Behälter Host
- 23. Docker-compose network_mode: "host" scheint nicht
- 24. Docker Zugang Elasticsearch Endpunkt von Host
- 25. Host-Port an Docker-Container weiterleiten
- 26. Docker EXPOSIERT einen Port nur an Host
- 27. Docker-Container-Volume schreibt nicht zum Host
- 28. Viele Docker Container auf einem Host
- 29. Elastische Beanstalk-Umgebungsvariablen für Docker-Host
Wenn ich ein Shell-Skript innerhalb des Docker-Container ausführen und das einige syscall aufruft, übergibt diese Zeit die PID des Host- oder Docker-Prozesses pid? Bitte helfen Sie hier –
@SowndaryaK Wenn Sie --pid = Host verwenden, wird die PID des Prozesses im Docker-Container Teil des Host-PID-Namespace. – VonC