Suche…


Bemerkungen

Leute, die Docker neu kennen, wissen oft nicht, dass Docker-Dateisysteme standardmäßig temporär sind. Wenn Sie ein Docker-Image starten, erhalten Sie einen Container, der sich auf der Oberfläche wie eine virtuelle Maschine verhält. Sie können Dateien erstellen, ändern und löschen. Im Gegensatz zu einer virtuellen Maschine gehen jedoch alle Änderungen verloren, wenn Sie den Container anhalten und erneut starten. Alle zuvor gelöschten Dateien sind nun wieder vorhanden, und alle neuen Dateien oder Änderungen, die Sie vorgenommen haben, sind nicht vorhanden.

Volumes in Docker-Containern ermöglichen persistente Daten und die gemeinsame Nutzung von Host-Maschinendaten in einem Container.

A) Starten Sie einen Container mit einem Volumen

[root@localhost ~]# docker run -it -v  /data  --name=vol3   8251da35e7a7 /bin/bash
root@d87bf9607836:/# cd /data/
root@d87bf9607836:/data# touch abc{1..10}
root@d87bf9607836:/data# ls

abc1 abc10 abc2 abc3 abc4 abc5 abc6 abc7 abc8 abc9

B) Drücken Sie nun [cont + P + Q], um den Container zu verlassen, ohne die Überprüfung des Containers auf den laufenden Container zu beenden

[root@localhost ~]# docker ps

CONTAINER ID BILDBEFEHL ERSTELLTE STATUSPORTS NAMEN d87bf9607836 8251da35e7a7 "/ bin / bash" Vor etwa einer Minute.

C) Führen Sie 'Docker Inspect' aus, um weitere Informationen zum Volume anzuzeigen

[root@localhost ~]# docker inspect  d87bf9607836

"" "" "" Anzahl "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "Laufstür. "Modus": "", "RW": wahr

D) Sie können ein laufendes Container-Volume an andere Container anhängen

[root@localhost ~]# docker run -it  --volumes-from  vol3  8251da35e7a7  /bin/bash

root@ef2f5cc545be:/# ls

bin boot data dev etc home lib lib64 medien mnt opt ​​prozz rennlauf sbin srv sys tmp usr var

root@ef2f5cc545be:/# ls / data abc1 abc10 abc2 abc3 abc4 abc5 abc6 abc7 abc8 abc9

E) Sie können auch Ihr Basisverzeichnis in einem Container einhängen

[root@localhost ~]# docker run -it  -v  /etc:/etc1 8251da35e7a7 /bin/bash

Hier: / etc ist das Host-Maschinenverzeichnis und / etc1 ist das Ziel innerhalb des Containers



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow