Docker/Grundlagen: Unterschied zwischen den Versionen
Erscheinungsbild
Keine Bearbeitungszusammenfassung |
|||
| Zeile 9: | Zeile 9: | ||
== Container == | == Container == | ||
; Was ist ein Container? | ; Was ist ein Container? | ||
Ein Container ist ein Sandbox-Prozess, der auf einem Host-Computer ausgeführt wird und von allen anderen auf diesem Host-Computer ausgeführten Prozessen isoliert ist | Ein Container ist ein Sandbox-Prozess, der auf einem Host-Computer ausgeführt wird und von allen anderen auf diesem Host-Computer ausgeführten Prozessen isoliert ist | ||
* Er ist eine lauffähige Instanz eines Images | * Diese Isolierung nutzt [https://medium.com/@saschagrunert/demystifying-containers-part-i-kernel-space-2c53d6979504 Kernel-Namespaces und cgroups], Funktionen, die es in Linux schon seit langem gibt | ||
* Docker macht diese Funktionen zugänglich und einfach zu verwenden | |||
* Zusammenfassend lässt sich sagen, dass ein Container | |||
* Er ist eine lauffähige Instanz eines Images | |||
* Sie können einen Container über die Docker-API oder die Befehlszeilenschnittstelle erstellen, starten, stoppen, verschieben oder löschen | |||
* Er kann auf lokalen oder virtuellen Maschinen ausgeführt oder in der Cloud bereitgestellt werden | * Er kann auf lokalen oder virtuellen Maschinen ausgeführt oder in der Cloud bereitgestellt werden | ||
* Er ist portabel (und kann auf jedem Betriebssystem ausgeführt werden) | * Er ist portabel (und kann auf jedem Betriebssystem ausgeführt werden) | ||
* Er ist von anderen Containern isoliert und führt seine eigene Software, Binärdateien, Konfigurationen usw | * Er ist von anderen Containern isoliert und führt seine eigene Software, Binärdateien, Konfigurationen usw | ||
* aus | |||
Wenn Sie mit chroot vertraut sind, dann stellen Sie sich einen Container als eine erweiterte Version von chroot vor | Wenn Sie mit chroot vertraut sind, dann stellen Sie sich einen Container als eine erweiterte Version von chroot vor | ||
* Das Dateisystem stammt aus dem Image | |||
* Ein Container bietet jedoch zusätzliche Isolierung, die bei der Verwendung von chroot nicht möglich ist | |||
== Image == | == Image == | ||
; Was ist ein Image? | ; Was ist ein Image? | ||
Ein laufender Container verwendet ein isoliertes Dateisystem | Ein laufender Container verwendet ein isoliertes Dateisystem | ||
* Dieses isolierte Dateisystem wird von einem Image bereitgestellt, und das Image muss alles enthalten, was zur Ausführung einer Anwendung erforderlich ist - alle Abhängigkeiten, Konfigurationen, Skripte, Binärdateien usw | |||
* Das Image enthält auch andere Konfigurationen für den Container, z | |||
* B | |||
* Umgebungsvariablen, einen Standardbefehl zur Ausführung und andere Metadaten | |||
== Aufruf == | == Aufruf == | ||
<syntaxhighlight lang="bash" highlight="1" line copy> | <syntaxhighlight lang="bash" highlight="1" line copy> | ||
| Zeile 29: | Zeile 40: | ||
! Unix !! GNU !! Parameter !! Beschreibung | ! Unix !! GNU !! Parameter !! Beschreibung | ||
|- | |- | ||
| || || || | | || || || | ||
|- | |- | ||
|} | |} | ||
| Zeile 42: | Zeile 53: | ||
| 0 || Erfolg | | 0 || Erfolg | ||
|- | |- | ||
| >0 | | >0 || Fehler | ||
|} | |} | ||
| Zeile 57: | Zeile 68: | ||
! Datei !! Beschreibung | ! Datei !! Beschreibung | ||
|- | |- | ||
| || | | || | ||
|- | |- | ||
| || | | || | ||
|} | |} | ||
| Zeile 74: | Zeile 85: | ||
=== Dokumentation === | === Dokumentation === | ||
<!-- | <!-- | ||
; Man-Page | ; Man-Page | ||
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)] | # [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)] | ||
; Info-Pages | ; Info-Pages | ||
--> | --> | ||
Version vom 22. Oktober 2025, 09:41 Uhr
Docker/Grundlagen - Beschreibung
Beschreibung
Installation
Container
- Was ist ein Container?
Ein Container ist ein Sandbox-Prozess, der auf einem Host-Computer ausgeführt wird und von allen anderen auf diesem Host-Computer ausgeführten Prozessen isoliert ist
- Diese Isolierung nutzt Kernel-Namespaces und cgroups, Funktionen, die es in Linux schon seit langem gibt
- Docker macht diese Funktionen zugänglich und einfach zu verwenden
- Zusammenfassend lässt sich sagen, dass ein Container
- Er ist eine lauffähige Instanz eines Images
- Sie können einen Container über die Docker-API oder die Befehlszeilenschnittstelle erstellen, starten, stoppen, verschieben oder löschen
- Er kann auf lokalen oder virtuellen Maschinen ausgeführt oder in der Cloud bereitgestellt werden
- Er ist portabel (und kann auf jedem Betriebssystem ausgeführt werden)
- Er ist von anderen Containern isoliert und führt seine eigene Software, Binärdateien, Konfigurationen usw
- aus
Wenn Sie mit chroot vertraut sind, dann stellen Sie sich einen Container als eine erweiterte Version von chroot vor
- Das Dateisystem stammt aus dem Image
- Ein Container bietet jedoch zusätzliche Isolierung, die bei der Verwendung von chroot nicht möglich ist
Image
- Was ist ein Image?
Ein laufender Container verwendet ein isoliertes Dateisystem
- Dieses isolierte Dateisystem wird von einem Image bereitgestellt, und das Image muss alles enthalten, was zur Ausführung einer Anwendung erforderlich ist - alle Abhängigkeiten, Konfigurationen, Skripte, Binärdateien usw
- Das Image enthält auch andere Konfigurationen für den Container, z
- B
- Umgebungsvariablen, einen Standardbefehl zur Ausführung und andere Metadaten
Aufruf
Optionen
| Unix | GNU | Parameter | Beschreibung |
|---|---|---|---|
Parameter
Umgebungsvariablen
Exit-Status
| Wert | Beschreibung |
|---|---|
| 0 | Erfolg |
| >0 | Fehler |
Anwendung
Problembehebung
Konfiguration
Dateien
| Datei | Beschreibung |
|---|---|
Anhang
Siehe auch
Dokumentation
Links
Projekt
Weblinks