Volume-Management - Docker

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Daten Speichern

  • Docker Daten sich nicht persistent und gehen verloren nachdem ein Container entfernt wurde.
  • Um Docker Daten zu speichern gibt es zwei Möglichkeiten
    • Docker Volumes
    • Bind Mount
  • Volumen können mit einem USB-Stick verglichen werden, der an den Container gesteckt wird
  • Bind Mount bindet ein Verzeichnis oder eine Datei des Host Systems in den Container ein. Vergleichbar mit der Funktion "Mount" in Linux Systemen

Volumen Management

Volumen einbinden - Option 1

  • Durch die Option "-v" oder "--volume" können Volumen mithilfe von "Docker run" direkt eingebunden werden
  • Die Syntax für die Volumen Option besteht aus drei Feldern --> --volume <Volume-Name>:<mount-path>:<options>
    • Das erste Feld stellt den Namen eines vorhanden Volumes bereit
    • Das zweite Feld bestimmt an welcher Stelle im Container das Volumen eingebunden wird
    • Das dritte Feld gilt als optionales Feld und bestimmt wie ein Volumen behandelt werden soll z.B. rw für Read Write oder ro für Read Only

Volumen einbinden - Option 2

  • Volumen können auch mit der Option --mount eingebunden werden. Diese ist sehr eindeutig.
  • Die Syntax stellt sich wie folgt zusammen ---> --mount type=volume,source=<volume-name>,destination=<Zielverzeichnis-des-Container>,readonly

Bind Mounts

  • Die Dateien in dem eingebunden Verzeichnis können jederzeit verändert werden. Das bedeutet auch während ein Container aktiv ist.
  • Die Befehle bleiben grundsätzlich gleich wie bei den Volumen nur ändern sich die variablen ein wenig

Bind Mount - Option 1

  • --volume <Pfad auf dem Host system zum Verzeichnis>:<mount-path>:<options>

Bind Mount - Option 2

  • --mount type=bind,source=<Pfad auf dem Host system zum Verzeichnis>,destination=<Zielverzeichnis-des-Container>