Wie in der Docker-Dokumentation zum Arbeiten mit Volumes beschrieben, gibt es das Konzept sogenannter Nur - Daten- Container, die ein Volume bereitstellen, das in mehrere andere Container eingebunden werden kann, unabhängig davon, ob der Nur-Daten-Container tatsächlich ausgeführt wird oder nicht.
Im Grunde klingt das fantastisch. Aber eines verstehe ich nicht.
Diese Volumes (die aus Portabilitätsgründen nicht explizit einem Ordner auf dem Host zugeordnet sind, wie in der Dokumentation angegeben) werden von Docker in einem internen Ordner auf dem Host erstellt und verwaltet ( /var/docker/volumes/…
).
Angenommen, ich verwende ein solches Volume und muss es dann von einem Host auf einen anderen migrieren. Wie portiere ich das Volume? AFAICS hat eine eindeutige ID - kann ich einfach das Volume und den entsprechenden Nur-Daten-Container auf einen neuen Host kopieren? Wie finde ich heraus, welche Dateien kopiert werden sollen? Oder ist in Docker eine Unterstützung integriert, die ich noch nicht entdeckt habe?
docker run --volumes-from <data container> ubuntu tar -cO <volume path> | gzip -c > volume.tgz
Dies hängt nicht von den Implementierungsdetails der Volumes ab. Und importieren Sie die Daten mit Teer auf die zweite Maschine.