Angesichts der weit verbreiteten Verwendung von Docker in der Anwendungsentwicklung und beim Cloud Computing stellen viele Benutzer fest, dass sie beim Herunterladen von Docker-Images und -Containern nicht wissen, wo diese Dateien gespeichert werden. In diesem Artikel werden wir den Speicherort und die Methode zum Speichern heruntergeladener Dateien in Docker detailliert beschreiben.
Die Dateisystemstruktur heruntergeladener Dateien in Docker
Bevor Sie den Speicherort heruntergeladener Dateien in Docker verstehen, müssen Sie zunächst die Dateisystemstruktur von Docker-Images und -Containern verstehen.
Docker-Image ist ein virtuelles Dateisystem, das das Root-Dateisystem enthält. Docker-Images verwenden die Union FS-Technologie. Im Image sind die Dateisysteme auf verschiedenen Ebenen schreibgeschützt und nur die oberste beschreibbare Ebene ist beschreibbar.
Die Dateistruktur des Docker-Image-Dateisystems ist wie folgt:
/ # 根目录 |-- bin/ # 可执行文件目录 |-- dev/ # 设备文件目录 |-- etc/ # 配置文件目录 |-- home/ # 用户根目录 |-- lib/ # 库文件目录 |-- media/ # 可移动设备目录 |-- mnt/ # 挂载目录 |-- opt/ # 可选应用程序目录 |-- proc/ # 进程信息目录 |-- root/ # 系统管理员目录 |-- run/ # 运行时文件目录 |-- sbin/ # 系统可执行文件目录 |-- srv/ # 服务目录 |-- sys/ # 系统文件目录 |-- tmp/ # 临时文件目录 |-- usr/ # 用户程序目录 |-- var/ # 可变数据目录 `-- docker/ # Docker自身用目录
Wenn Docker einen Container startet, fügt es der obersten Ebene des Images zur Speicherung eine Ebene mit Lese-/Schreibzugriff hinzu Für die Ausführung der Anwendung sind neue Dateien und Daten erforderlich. Diese beschreibbare Schicht ist Teil des Dateisystems des Containers.
Die Dateistruktur des Docker-Container-Dateisystems ist wie folgt:
/ # 根目录 |-- bin/ # 可执行文件目录 |-- dev/ # 设备文件目录 |-- etc/ # 配置文件目录 |-- home/ # 用户根目录 |-- lib/ # 库文件目录 |-- media/ # 可移动设备目录 |-- mnt/ # 挂载目录 |-- opt/ # 可选应用程序目录 |-- proc/ # 进程信息目录 |-- root/ # 系统管理员目录 |-- run/ # 运行时文件目录 |-- sbin/ # 系统可执行文件目录 |-- srv/ # 服务目录 |-- sys/ # 系统文件目录 |-- tmp/ # 临时文件目录 |-- usr/ # 用户程序目录 |-- var/ # 可变数据目录 `-- docker/ # Docker自身用目录
Der Speicherort der in Docker heruntergeladenen Dateien
Die in Docker heruntergeladenen Dateien werden in der beschreibbaren Ebene des Images oder Containers gespeichert Wird in dem im Container verwendeten Container gespeichert und kann auch aus dem Container in das Host-Dateisystem exportiert werden.
Hier finden Sie einige Beispiele für Datei-Downloads und wie Sie diese finden.
Wenn Sie ein Docker-Image ausführen, können Sie die Anweisungen ADD oder COPY in der Docker-Datei verwenden, um Dateien zum Image hinzuzufügen.
Das Format der ADD-Anweisung ist:
ADD source destination
wobei Quelle die Datei oder das Verzeichnis auf dem Host und Ziel das Verzeichnis im Docker-Image ist.
Das Format der COPY-Anweisung ist:
COPY source destination
wobei Quelle die Datei oder das Verzeichnis auf dem Host und Ziel das Verzeichnis im Docker-Image ist.
Zum Beispiel kopiert die folgende Docker-Datei die Datei index.html vom Host in das Verzeichnis /var/www im Bild:
FROM nginx COPY index.html /var/www/
Zur Laufzeit können Sie den Docker-Inspect-Befehl von Docker verwenden, um diese Datei zu finden:
$ docker inspect [imageID] | grep "/var/www/index.html"
Es gibt viele Möglichkeiten, Dateien im Docker-Container herunterzuladen, einschließlich der Verwendung von Befehlen wie wget, curl, scp usw. Sie können auch die Anweisungen ADD und COPY verwenden, um Dateien aus dem zu kopieren Gastgeber.
Verwenden Sie wget, um eine Datei in einen Container herunterzuladen:
$ docker run -it ubuntu wget http://example.com/file.txt
Hier sind die Schritte, um mit wget eine Datei in einen Container herunterzuladen:
Erstellen Sie einen Ubuntu-Container:
$ docker run -it ubuntu
Installieren Sie wget:
$ apt-get update $ apt-get install wget
Laden Sie eine Datei herunter mit wget:
$ wget http://example.com/file.txt
Verwenden Sie den Befehl docker cp von Docker, um Dateien vom Container auf den Host zu kopieren:
$ docker cp [containerID]:/file.txt .
Verwenden Sie Curl, um die Datei in den Container herunterzuladen:
Nehmen Sie das Herunterladen des Google-Logos als Beispiel:
$ docker run -it ubuntu curl -o google_logo.png https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png
Verwenden Sie ADD und COPY Anweisungen zum Kopieren der Datei vom Host in den Container:
Ähnlich wie beim Image können Sie mithilfe der ADD- und COPY-Anweisungen von Docker auch Dateien vom Host in den Container kopieren. Diese Dateien werden in einer beschreibbaren lokalen Ebene des Containers gespeichert.
Hier ist ein Beispiel für eine Docker-Datei, die die ADD-Anweisung verwendet, um eine Datei vom Host in einen Container zu kopieren:
FROM ubuntu ADD file.txt /app/
Zur Laufzeit können Sie den Docker-Inspect-Befehl von Docker verwenden, um diese Datei zu finden:
$ docker inspect [containerID] | grep "/app/file.txt"
Zusammenfassung
Heruntergeladen Dateien in Docker Die beschreibbare Ebene wird im entsprechenden Image oder Container gespeichert und die Dateien können über Docker-Anweisungen oder mit gängigen Tools aus dem Container heruntergeladen oder kopiert werden. Ihr Standort und ihre Methoden sind relativ einfach zu beherrschen, sodass Sie sich bei der Verwendung von Docker nicht allzu viele Gedanken über diese Probleme machen müssen.
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in den Speicherort und die Methode zum Speichern heruntergeladener Dateien in Docker. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!