Heim > Artikel > Betrieb und Instandhaltung > So erstellen Sie eine Docker-Image-Datei
Mit der Entwicklung des Cloud Computing und der Popularisierung von Anwendungen hat die Docker-Technologie immer mehr Aufmerksamkeit auf sich gezogen und ist zu einem unverzichtbaren Bestandteil der modernen Softwareentwicklung und -bereitstellung geworden. Als Träger des Docker-Containers wird das Docker-Image erstellt und erstellt Die Bedeutung des Managements darf nicht unterschätzt werden. In diesem Artikel werden das Konzept von Docker-Images, die Erstellung von Docker-Images und allgemeine Docker-Image-Verwaltungsvorgänge vorgestellt.
1. Das Konzept des Docker-Images
Docker-Image ist ein leichtes, ausführbares unabhängiges Softwarepaket, das alle zum Ausführen der Programmkonfiguration erforderlichen Dateien enthält. Zu diesen Dateien und Konfigurationen gehören: Betriebssystem, Anwendungscode, Bibliotheken, Umgebungsvariablen, Konfigurationsdateien und mehr. Docker-Images stellen eine Standardbetriebsumgebung bereit, die uns dabei helfen kann, Anwendungen schnell bereitzustellen, zu migrieren und zu erweitern.
Docker-Images verwenden eine geschichtete Speichermethode. Jedes Image besteht aus einer Reihe von schreibgeschützten Ebenen. Die oberste Ebene ist die Lese-/Schreibebene, die verwendet wird Speichern Sie Daten und geänderte Konfigurationsdateien. Durch diese Schichtstruktur sind Docker-Images sehr leichtgewichtig und können schnell erstellt, kopiert und übertragen werden, während gleichzeitig Speicherplatz gespart wird.
2. So erstellen Sie ein Docker-Image
Die Erstellung eines Docker-Images basiert auf der Dockerfile-Datei, die eine Reihe von Anweisungen enthält Parameter. Docker erstellt das Image automatisch, indem es diese Anweisungen und Parameter analysiert. Im Folgenden stellen wir die grundlegenden Schritte zum Erstellen eines Docker-Images vor.
Bevor wir mit der Erstellung eines Docker-Images beginnen, müssen wir zuerst eine Docker-Datei schreiben, die eine Reihe von Anweisungen und enthält Parameter, mit denen Docker angewiesen wird, das Image zu erstellen. Dockerfile-Dateien bestehen normalerweise aus einem Basis-Image, Anwendungscode und einigen Konfigurationsdateien.
Das Folgende ist ein einfaches Dockerfile-Beispiel:
FROM ubuntu:18.04 RUN apt-get update && \ apt-get install -y nginx && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* COPY nginx.conf /etc/nginx/nginx.conf CMD ["nginx", "-g", "daemon off;"]
Diese Dockerfile-Datei bedeutet: Erstellen Sie ein neues Image basierend auf dem Ubuntu 18.04-Image und installieren Sie den Nginx-Anwendungsserver und das Konfigurationsdokument . Wenn dieses Image ausgeführt wird, wird Nginx als Daemon ausgeführt.
Nachdem wir die Dockerfile-Datei geschrieben haben, können wir mit dem Erstellen des Docker-Images beginnen. Verwenden Sie den folgenden Befehl, um ein neues Bild zu erstellen:
docker build -t <image_name>:<tag> .
Wobei <image_name>:<tag>
der Name und das Tag des Bildes ist, .
code> gibt den Pfad an, in dem sich die Dockerfile-Datei befindet. Beispielsweise können wir den folgenden Befehl verwenden, um ein Image mit dem Namen mynginx
zu erstellen: <image_name>:<tag>
是镜像的名称和标签,.
表示Dockerfile文件所在的路径。例如,我们可以使用以下命令构建一个名为mynginx
的镜像:
docker build -t mynginx:1.0.0 .
该命令将会在当前目录下寻找Dockerfile文件,并构建一个名为mynginx
,标签为1.0.0
的镜像。
Docker镜像构建完成后,我们可以运行该镜像并测试应用程序是否能够正确工作。使用以下命令可以运行一个新的容器:
docker run -d -p <host_port>:<container_port> <image_name>:<tag>
其中,-d
表示后台运行容器,-p
表示将容器的端口映射到主机的端口,<host_port>
表示主机端口,<container_port>
表示容器内部的端口。例如,我们可以使用以下命令运行mynginx
镜像:
docker run -d -p 80:80 mynginx:1.0.0
该命令将会在后台运行一个名为mynginx
,标签为1.0.0
的容器,并将容器的80端口映射到主机的80端口。
三、Docker镜像的管理
Docker镜像的管理是Docker容器运行的重要一环,以下是常见的Docker镜像管理操作。
使用以下命令可以查看本地所有的Docker镜像:
docker images
该命令将会列出所有本地的Docker镜像,包括镜像名称、标签、大小等信息。
使用以下命令可以删除本地某个Docker镜像:
docker rmi <image_name>:<tag>
例如,我们可以使用以下命令删除mynginx
镜像:
docker rmi mynginx:1.0.0
该命令将会删除本地名为mynginx
,标签为1.0.0
的Docker镜像。
使用以下命令可以从Docker Hub上拉取某个Docker镜像:
docker pull <image_name>:<tag>
例如,我们可以使用以下命令从Docker Hub上拉取Nginx镜像:
docker pull nginx:latest
该命令将会从Docker Hub上拉取最新版的Nginx镜像。
使用以下命令可以将本地某个Docker镜像推送到Docker Hub:
docker push <image_name>:<tag>
例如,我们可以使用以下命令将本地名为mynginx
,标签为1.0.0
docker push mynginx:1.0.0Dieser Befehl sucht im aktuellen Verzeichnis nach der Dockerfile-Datei und erstellt ein Image mit dem Namen mynginx, das Bild mit der Bezeichnung
1.0.0
.
Nachdem das Docker-Image erstellt wurde, können wir das Image ausführen und testen, ob die Anwendung funktioniert richtig. Verwenden Sie den folgenden Befehl, um einen neuen Container auszuführen:
rrreee#🎜🎜# Dabei bedeutet-d
, dass der Container im Hintergrund ausgeführt wird, und -p
bedeutet Zuordnen des Ports des Containers Der Port zum Host, <host_port>
stellt den Host-Port dar und <container_port>
stellt den Port innerhalb des Containers dar. Beispielsweise können wir den folgenden Befehl verwenden, um das Bild mynginx
auszuführen: #🎜🎜#rrreee#🎜🎜#Dieser Befehl führt eine Datei namens mynginx
im Hintergrund aus Beschriften Sie den 1.0.0
-Container und ordnen Sie Port 80 des Containers dem Port 80 des Hosts zu. #🎜🎜##🎜🎜#3. Docker-Image-Verwaltung #🎜🎜##🎜🎜#Die Docker-Image-Verwaltung ist ein wichtiger Bestandteil der Ausführung von Docker-Containern. #🎜🎜##🎜🎜##🎜🎜#Docker-Bilder anzeigen #🎜🎜##🎜🎜##🎜🎜#Verwenden Sie den folgenden Befehl, um alle lokalen Docker-Bilder anzuzeigen: #🎜🎜#rrreee#🎜🎜#Dieser Befehl wird Alle lokalen Docker-Bilder werden aufgelistet, einschließlich Bildname, Beschriftung, Größe und anderen Informationen. #🎜🎜##🎜🎜##🎜🎜#Docker-Image löschen#🎜🎜##🎜🎜##🎜🎜#Verwenden Sie den folgenden Befehl, um ein lokales Docker-Image zu löschen: #🎜🎜#rrreee#🎜🎜#Zum Beispiel: Wir können den folgenden Befehl verwenden, um das Bild mynginx
zu löschen: #🎜🎜#rrreee#🎜🎜#Dieser Befehl löscht den lokalen Namen mynginx
und die Bezeichnung 1.0.0. #🎜🎜#<ol start="3">#🎜🎜#Docker-Image ziehen #🎜🎜##🎜🎜##🎜🎜#Verwenden Sie den folgenden Befehl, um ein Docker-Image vom Docker Hub abzurufen: #🎜🎜 #rrreee# 🎜🎜#Zum Beispiel können wir den folgenden Befehl verwenden, um das Nginx-Image vom Docker Hub abzurufen: #🎜🎜#rrreee#🎜🎜#Dieser Befehl ruft die neueste Version des Nginx-Images vom Docker Hub ab. #🎜🎜#<ol start="4">#🎜🎜#Docker-Image übertragen #🎜🎜##🎜🎜##🎜🎜#Verwenden Sie den folgenden Befehl, um ein lokales Docker-Image an Docker Hub zu übertragen: #🎜🎜# rrreee #🎜🎜#Zum Beispiel können wir den folgenden Befehl verwenden, um das lokale Image mit dem Namen <code>mynginx
und der Bezeichnung 1.0.0
an Docker Hub zu übertragen: #🎜🎜#rrreee# 🎜 🎜#Dieser Befehl überträgt das Image an Docker Hub, damit andere Entwickler oder Produktionsumgebungen es teilen können. #🎜🎜##🎜🎜# 4. Zusammenfassung #🎜🎜##🎜🎜# Dieser Artikel stellt kurz das Konzept, die Produktion und die Verwaltung von Docker-Images vor und hofft, den Lesern zu helfen, die Docker-Technologie besser zu verstehen und anzuwenden. Die Erstellung hochwertiger Docker-Images ist ein wichtiger Bestandteil der Gewährleistung der Stabilität und Zuverlässigkeit des Docker-Containerbetriebs. Sie erfordert die Zusammenarbeit von Entwicklern sowie Betriebs- und Wartungspersonal, um diese im Detail zu erstellen und zu verwalten. #🎜🎜#Das obige ist der detaillierte Inhalt vonSo erstellen Sie eine Docker-Image-Datei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!