


Das ausführlichste Tutorial zum Organisieren von Docker-Datenvolumes
Dieser Artikel vermittelt Ihnen relevantes Wissen über Datenvolumes in Docker. Änderungen an den Datenvolumes werden nicht in die Aktualisierung des Images einbezogen. helfen.
Empfohlene Studie: „Docker-Video-Tutorial“
Was ist ein Datenvolumen?
Bei Verwendung eines Docker-Containers werden eine Reihe von Datendateien generiert, wenn der Docker-Container verschwindet wird gelöscht, aber es wird erwartet, dass ein Teil des generierten Inhalts für eine andere Verwendung gespeichert wird. Die Programmierer hoffen, dass einige der während des laufenden Prozesses generierten Daten beibehalten werden können um Daten zwischen Containern austauschen zu können.
Im Allgemeinen kann das Docker-Container-Datenvolumen als häufig verwendetes USB-Laufwerk betrachtet werden. Es befindet sich in einem oder mehreren Containern und wird von Docker in den Container eingebunden. Es gehört jedoch nicht zum gemeinsamen Dateisystem Löschen Sie es nicht im Container. Löschen Sie das bereitgestellte Datenvolumen.
Funktionen von Datenvolumes
Datenvolumes können Daten zwischen Containern teilen oder wiederverwenden
Änderungen am Datenvolumen können sofort wirksam werden
Änderungen am Datenvolumen werden nicht in die Aktualisierung des Spiegels einbezogen
Standardmäßig ist Das Datenvolumen bleibt immer bestehen, auch wenn der Container gelöscht wird
Der Lebenszyklus des Datenvolumens wird fortgesetzt, bis es von keinem Container mehr verwendet wird
Verwaltungsdaten im Container
Datenvolumes: Datenvolumes Daten im Container werden direkt zugeordnet die lokale Host-Umgebung
Allgemeine Parameter-L: Quell-Links im Ziel behaltenGrundlegende VerwendungHostdateien in den Container kopierendocker cp [OPTIONS] SRC_PATH CONTAINER:DEST_PATH
docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH
Hinweise zu Datenvolumes
Um ein Datenvolume bereitzustellen, erstellen Sie am besten einen Startcontainer über „Ausführen“ statt über „Erstellen/Starten“. Nachdem der Befehl „Erstellen/Starten“ einen Startcontainer erstellt hat, ist das Mounten ziemlich mühsam Datenvolumen. Viele Konfigurationen müssen geändert werden, aber nicht unmöglich. Die offizielle Website von Docker empfiehlt, möglichst viele Verzeichnisse anstelle von Dateien zu mounten Volumen: Ein von Docker verwaltetes Datenvolumen auf der Festplatte, aber dieses Volumen hat einen Namen. Anonymes Datenvolumen: Ein von Docker verwaltetes Datenvolumen auf der Festplatte. Es ist nicht leicht zu finden, da es keinen Namen gibt.Host-Datenvolumen
Bind-Mounts: Die Daten im Container werden an einer beliebigen Stelle im Host-Dateisystem gespeichert, sogar in einigen wichtigen Systemverzeichnissen oder Dateien. Andere Prozesse als Docker können sie auch beliebig ändern. Bei Verwendung von Bind-Mounts wird das Hostverzeichnis oder die Hostdatei in den Container gemountet. Der Container verwendet oder ändert die Daten des Hosts entsprechend dem absoluten Pfad des Mountverzeichnisses oder der Mountdatei. Verzeichnisse oder Dateien auf dem Host müssen nicht im Voraus vorhanden sein und werden bei Bedarf automatisch erstellt. Die Verwendung von Bind-Mounts ist hinsichtlich der Leistung sehr gut, hängt jedoch davon ab, dass der Host-Computer über ein gut strukturiertes Dateisystem verfügt.Container, die Bind-Mounts verwenden, können das Host-Dateisystem durch den Prozess innerhalb des Containers ändern, einschließlich des Erstellens, Änderns und Löschens wichtiger Systemdateien und Verzeichnisse. Obwohl diese Funktion sehr leistungsfähig ist, hat sie natürlich auch Auswirkungen auf andere Prozesse als Docker auf dem Host
HinweiseWenn Sie ein leeres Datenvolumen in einem nicht leeren Verzeichnis im Container bereitstellen, werden die Dateien in diesem Verzeichnis auf das Datenvolumen kopiertWenn Sie ein nicht leeres Datenvolumen bereitstellen in ein Verzeichnis im Container, und das Verzeichnis im Container zeigt die Daten im Datenvolumen an. Wenn im Originalverzeichnis im Container Daten vorhanden sind, werden die Originaldaten ausgeblendetGrundlegende VerwendungSyntax
docker cp /data/index.html nginx:/usr/share/nginx/html/index.html
docker cp nginx:/etc/nginx/nginx.conf /data
docker run -v /宿主机绝对路径目录:/容器内目录 镜像名
Benanntes Datenvolumen
Basic Verwenden Siedocker run -itd --name mysql --restart always --privileged=true -p 3306:3306 -e MYSQL_ROOT_PASSWORD=admin -v /data/mysql:/var/lib/mysql mysql:5.7.31 --character-set-server=utf8 --collation-server=utf8_general_ci
docker rm $(docker stop $(docker ps -aq))
查看挂载数据是否还存在,通过查看数据,发现删除容器后,宿主机中的数据还存在
ls
匿名数据卷
基本使用
docker run -itd --name nginx -p 80:80 -v /etc/nginx nginx:1.19.3-alpine 查看docker数据卷 docker volume ls
查看宿主机目录
docker volume inspect dbd07daa4e40148b11....
进入docker数据卷默认目录
cd /var/lib/docker/volumes/dbd07daa4e40148b11....
查看文件
ls
所有的文件docker默认保存在_data目录中 cd _data
删除容器
docker rm $(docker stop $(docker ps -aq))
查看挂载数据是否还存在,通过查看数据,发现删除容器后,宿主机中的数据还存在
ls
数据卷容器
run命令
常用参数
--volumes-from
如果用户需要在多个容器之间共享一些持续更新的数据,最简单的方式是使用数据卷容器。数据卷容器
也是一个容器,但是它的目的是专门用来提供数据卷供其他容器挂载。
发现创建好的数据卷容器是处于停止运行的状态,因为使用 —volumes-from 参数所挂载数据卷的容器 自己并不需要保持在运行状态。
基本使用
docker run -d --name data-volume -v /data/nginx:/usr/share/nginx/html -v /data/mysql:/var/lib/mysql centos:7.8.2003 docker run -itd --name nginx01 -p 80:80 --volumes-from data-volume nginx:1.19.3- alpine echo "nginx" > /data/nginx/index.html http://192.168.198.100 docker run -itd --name nginx02 -p 81:80 --volumes-from data-volume nginx:1.19.3- alpine http://192.168.198.100:81 docker run -itd --name mysql01 --restart always --privileged=true -p 3306:3306 -e MYSQL_ROOT_PASSWORD=admin --volumes-from data-volume mysql:5.7.31 -- character-set-server=utf8 --collation-server=utf8_general_ci docker run -itd --name mysql02 --restart always --privileged=true -p 3307:3306 -e MYSQL_ROOT_PASSWORD=admin --volumes-from data-volume mysql:5.7.31 -- character-set-server=utf8 --collation-server=utf8_general_ci
推荐学习:《docker视频教程》
Das obige ist der detaillierte Inhalt vonDas ausführlichste Tutorial zum Organisieren von Docker-Datenvolumes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Schritte zum Erstellen eines Docker -Images: Schreiben Sie eine Dockerfile, die die Build -Anweisungen enthält. Erstellen Sie das Bild im Terminal mit dem Befehl Docker Build. Markieren Sie das Bild und weisen Sie Namen und Tags mit dem Befehl Docker Tag zu.

Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

Methoden zum Kopieren von Dateien in externen Hosts in Docker: Verwenden Sie den Befehl Docker CP: Docker CP [Optionen] & lt; Containerpfad & gt; & lt; Host -Pfad & gt;. Verwenden von Datenvolumina: Erstellen Sie ein Verzeichnis auf dem Host und verwenden Sie den Parameter -V, um das Verzeichnis in den Container zu montieren, um den Container zu erstellen, um eine bidirektionale Dateisynchronisation zu erreichen.

Sie können den Namen des Docker -Containers abfragen, indem Sie den Schritten folgen: Alle Container auflisten (Docker PS). Filtern Sie die Containerliste (unter Verwendung des GREP -Befehls). Ruft den Containernamen ab (befindet sich in der Spalte "Namen").

Um die Docker -Version zu erhalten, können Sie die folgenden Schritte ausführen: Führen Sie den Befehl Docker "Docker --version" aus, um die Client- und Serverversionen anzuzeigen. Für Mac oder Windows können Sie auch Versionsinformationen über die Registerkarte Version der Docker -Desktop -GUI oder das Menü Docker Desktop anzeigen.

Um das Bild in Docker zu speichern, können Sie den Befehl docker comit verwenden, um ein neues Bild zu erstellen, das den aktuellen Status des angegebenen Containers Syntax: Docker Commit [Optionen] Container -ID -Bildname enthält. Um das Bild im Repository zu speichern, können Sie den Befehl Docker Push, Syntax: Docker -Push -Bildname [: Tag] verwenden. Um gespeicherte Bilder zu importieren, können Sie den Befehl Docker Pull, Syntax: Docker Pull Bildname [: Tag] verwenden.

Vier Möglichkeiten zum Beenden von Docker Container: Verwenden Sie Strg D im Befehl Container Terminal ENGEBOT IM Container Terminal verwenden Sie Docker Stop & lt; container_name & gt; Befehl verwenden Sie Docker Kill & lt; container_name & gt; Befehl im Host -Terminal (Force Exit)
