2017-03-01 1 views
0

Ich habe eine folgende Frage:
Wenn Änderungen am Speicher zwischen den Neustarts des Containers bestehen bleiben?
Zum Beispiel fügen wir einige Zeilen zu mysql Datenbank und starten Container neu. Wenn nach dem Neustart zusätzliche Zeilen in der Datenbank vorhanden sind?Docker - wenn Änderungen am Speicher geschrieben werden?

Antwort

0

Ja, das sind sie. Für jeden ausgeführten Container wird ein Andock-Volume (docker volume -ls, um sie aufzulisten) erstellt. Wenn Sie jedoch den Container entfernen oder aus irgendeinem Grund einen neuen erstellen, gehen alle Änderungen verloren.

Für eine Datenbank wird empfohlen, shared volumes zwischen Host und dem Container zu verwenden, um die Daten sichern zu können.

Sie können sehen, welches Volumen von Ihrem Container mit docker inspect verwendet wird.

+0

können Sie mir mehr sagen? In diesem Moment denke ich darüber als virtuelle Maschine - eigenes Dateisystem, eigene Schnittstellen, alles besitzen. Wo ist der Hauptunterschied? –

+0

Nun, es könnte funktionieren, aber es ist nicht der Zweck von Docker. Wenn Sie etwas wie eine virtuelle Maschine machen möchten, sollten Sie mit einer virtuellen Maschine gehen. Docker läuft auf Ihrem Host-Kernel, und es sollte in der Lage sein, ohne Auswirkungen gestartet/gestoppt zu werden, und es sollte in der Lage sein, sogar in einem neuen Zustand zu arbeiten (Daten zu bereinigen). Es ist eine andere Philosophie, die Sie mit der Zeit und der Verwendung erhalten werden –

0

Hi
Um die Daten zwischen den Neustarts des Containers beizubehalten, müssen Sie ein Verzeichnis vom Host zum Container mounten, damit es für den Container sichtbar ist.
Bitte überprüfen Sie diese how to share a directory for mysql, die Ihnen helfen wird

Verwandte Themen