2015-03-16 22 views
5

Ich verstehe, dass Docker-Container standardmäßig mit dem Device Mapper-Speichertreiber maximal 10 GB Speicherplatz belegen.Docker - Datenträgerkontingente

In meinem Fall habe ich einen Worker Container und einen Datenvolumen Container. Ich verknüpfe sie dann mit "-volumes-from". Ich verwende auch den Device Mapper-Speichertreiber.

Beispiel: Ich habe einen Test durchgeführt, indem ich ein Skript erstellt habe, um eine 20-GB-Datei auf meinen Datenvolumencontainer herunterzuladen, und das hat erfolgreich funktioniert.

Meine Frage, gibt es eine 10 GB Kontingent für den Datenvolumen Container? Wie konnte die 20GB-Datei erfolgreich heruntergeladen werden, wenn sie auf 10 GB begrenzt ist?

+0

Ist Ihr Datenvolumen-Container mit '-v host: container' ausgestattet? Wenn ja, dann ist das nicht in Devicemapper gespeichert. –

+0

Vielen Dank für Ihre Antwort @AbdullahJibaly. Nein, der Datencontainer ist nicht am Host angehängt, der Datencontainer wird wie folgt erstellt: -v/data – James

Antwort

5

Volumes sind per Definition außerhalb des Union File System, so dass alle darin enthaltenen Daten nicht für die Begrenzung des Devicemapper 10GB gelten. Standardmäßig werden Datenträger unter /var/lib/docker/vfs gespeichert, wenn Sie keinen Bereitstellungspunkt angeben.

Sie das genau das finden können, wo Ihre Volumes auf dem Host unter Verwendung des docker inspect Befehl zB:

docker inspect -f {{.Volumes}} CONTAINER 

Sie werden sich wie ein Ergebnis bekommen:

map[/CONTAINER/VOLUME:/var/lib/docker/vfs/dir/5a6f7b306b96af38723fc4d31def1cc515a0d75c785f3462482f60b730533b1a] 

Wo der Weg nach dem Doppelpunkt ist der Speicherort des Volumes auf dem Host.