2017-01-15 5 views
2

Ich verwende die Docker HTTP API beschrieben here.programmatic Zugriff auf Docker Volumes von Host

Angenommen, ich erhalte eine Datenträger-ID mit dem API-Endpunkt GET /volumes. Ist es mir möglich, den Inhalt dieses Volumens zu überprüfen (Dateien auflisten, Dateien lesen)?

Ich verstehe, dass ich einen Container erstellen konnte, der dieses Volume einbindet, und dann den /containers/(id)/archive Endpunkt verwenden, um Dateien von ihm herunterzuladen, aber das scheint eine ziemlich teure Operation, wenn alles, was ich tun möchte, den Inhalt einer einzelnen Datei überprüft auf der Lautstärke.

Antwort

1

Ich denke, die richtige Sache ist auch, führen Sie die Skripts, die Sie in einem Container mit den Volumes mounted ausführen möchten, aber Sie können nur die Dateien und Ordner im Volume-Ordner hier auflisten: /var/lib/docker/volumes/.

Dieser Pfad wird sich ändern, wenn Sie ein kleines Andockfenster optimieren, aber Ihre Volumes immer irgendwo gespeichert werden, gehen Sie einfach in den Ordner, der Ihrer Volume-ID entspricht.

Wir sehen uns!

+0

Es ist erwähnenswert, dass, wenn Sie eine Abstraktionsschicht wie Docker-Maschine, Docker für Mac, Docker für Windows verwenden, dass dieses '/ var/lib'-Verzeichnis in einer VM auf Ihrem System sein kann, nicht auf der Haupt System selbst. –

Verwandte Themen