Durch die Verwendung von Dockerfile können Benutzer benutzerdefinierte Bilder erstellen. Grundstruktur Dockerfile besteht aus Befehlszeilen und unterstützt Kommentarzeilen, die mit # beginnen. Im Allgemeinen ist Dockerfile in vier Teile unterteilt: Basis-Image-Informationen, Betreuerinformationen, Anweisungen zum Image-Betrieb und Anweisungen, die beim Starten des Containers ausgeführt werden. Zum Beispiel: // Grundlegende Bildinformationen VON daocloud.io/node:7 // Informationen zum Betreuer MAINTAINER abel.yang <[email protected]> LABEL Beschreibung="Dieses Bild wurde für das Web erstellt" //Spiegelungsvorgangsbefehl RUN mkdir -p /opt/apps/epp KOPIEREN . /opt/apps/epp ARBEITSVERZEICHNIS /opt/apps/epp/epp-web/server ENV LANG C.UTF-8 ENV TZ=Asien/Shanghai RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone EXPOSE 3001 //Führen Sie den Befehl CMD [ "npm", "start" ] aus, wenn der Container startet Darunter müssen Sie zuerst den Namen des Bildes angeben, auf dem es basiert. Anschließend wird empfohlen, die Informationen zum Betreuer anzugeben. Darauf folgen Bildoperationsanweisungen, wie beispielsweise die RUN-Anweisung, die die folgenden Befehle auf dem Bild ausführt. Bei jeder Ausführung einer RUN-Anweisung wird dem Bild eine neue Ebene hinzugefügt und übermittelt. Abschließend gibt es noch den CMD-Befehl, der den Operationsbefehl beim Ausführen des Containers angibt. Anweisung INSTRUCTION-Argumente, Anweisungen umfassen FROM, MAINTAINER, RUN usw.
Die erste Anweisung muss eine FROM-Anweisung sein. Wenn Sie mehrere Images in derselben Docker-Datei erstellen, können Sie außerdem mehrere FROM-Anweisungen verwenden (einmal für jedes Image). BEWAHRER Das Format ist MAINTAINER und gibt die Betreuerinformationen an. LAUFEN Das Format ist RUN oder RUN ["ausführbare Datei", "Param1", "Param2"]. Ersteres führt den Befehl im Shell-Terminal aus, nämlich /bin/sh -c; letzteres wird mit exec ausgeführt. Die Angabe eines anderen Terminals ist mit der zweiten Methode möglich, z. B. RUN ["/bin/bash", "-c", "echo hello"]. Jeder RUN-Befehl führt den angegebenen Befehl basierend auf dem aktuellen Image aus und übermittelt ihn als neues Image. Wenn der Befehl lang ist, können Sie ihn mit \ umschließen. CMD Unterstützt drei Formate
Gibt den Befehl an, der beim Starten des Containers ausgeführt werden soll. Jedes Dockerfile kann nur einen CMD-Befehl haben. Wenn mehrere Befehle angegeben werden, wird nur der letzte ausgeführt. Wenn der Benutzer beim Starten des Containers einen auszuführenden Befehl angibt, wird der von CMD angegebene Befehl überschrieben. EXPONIEREN
Teilen Sie dem Docker-Server die Portnummer mit, die der Container zur Verwendung durch verbundene Systeme freigibt. Beim Starten des Containers müssen Sie -P übergeben, und der Docker-Host weist automatisch einen Port zur Weiterleitung an den angegebenen Port zu. Umwelt
HINZUFÜGEN
KOPIE
Wenn Sie als Quellverzeichnis ein lokales Verzeichnis verwenden, empfiehlt sich die Verwendung von COPY. EINSTIEGSPUNKT Zwei Formate:
Der nach dem Start des Konfigurationscontainers auszuführende Befehl kann nicht durch die von „docker run“ bereitgestellten Parameter überschrieben werden. In jedem Dockerfile kann nur ein ENTRYPOINT vorhanden sein. Wenn mehrere ENTRYPOINTs angegeben werden, wird nur der letzte wirksam. VOLUMEN Das Format ist VOLUME ["/Daten"]. Erstellen Sie einen Einhängepunkt, der vom lokalen Host oder anderen Containern eingehängt werden kann. Dieser wird im Allgemeinen zum Speichern von Datenbanken und Daten verwendet, die verwaltet werden müssen. BENUTZER Das Format ist USER-Daemon. Geben Sie beim Ausführen des Containers den Benutzernamen oder die UID an. Nachfolgende RUNs verwenden ebenfalls den angegebenen Benutzer. Wenn der Dienst keine Administratorrechte erfordert, können Sie den ausgeführten Benutzer über diesen Befehl angeben. Und Sie können die erforderlichen Benutzer vor Beispiel: ARBEITSVERZEICHNIS
Konfigurieren Sie das Arbeitsverzeichnis für nachfolgende RUN-, CMD- und ENTRYPOINT-Anweisungen. Es können mehrere WORKDIR-Direktiven verwendet werden. Wenn die Parameter nachfolgender Befehle relative Pfade sind, basieren sie auf den Pfaden, die in den vorherigen Befehlen angegeben wurden. Zum Beispiel ARBEITSVERZEICHNIS /a WORKDIR b WORKDIR c RUN-Kennwort Der endgültige Pfad ist /a/b/c. EINBAUEN
Konfigurieren Sie die Betriebsanweisungen, die ausgeführt werden sollen, wenn das erstellte Image als Basisimage für andere, neu erstellte Images verwendet wird. Beispielsweise erstellt das Dockerfile ein Image-A mit folgendem Inhalt. [...] ONBUILD HINZUFÜGEN ./app/src ONBUILD RUN /usr/local/bin/python-build --dir /app/src [...] Wenn Sie basierend auf Image A ein neues Image erstellen und FROM Image A verwenden, um das Basisimage in der neuen Docker-Datei anzugeben, wird der Inhalt der ONBUILD-Anweisung automatisch ausgeführt, was dem Hinzufügen von zwei Anweisungen am Ende entspricht. VON Bild-A #Führen Sie Folgendes automatisch aus HINZUFÜGEN ./app/src RUN /usr/local/bin/python-build --dir /app/src Bei Images, die die ONBUILD-Anweisung verwenden, wird empfohlen, dies im Tag anzugeben, zum Beispiel Erstellen eines Images Nachdem Sie die Docker-Datei geschrieben haben, können Sie mit dem Befehl „Docker Build“ ein Image erstellen. Docker-Build -t Image-Name. // Hinweis. Nicht vergessen. Nachfolgend finden Sie zwei Beispiele für Dockerfiles auf Dockerhub. # Nginx # # VERSION 0.0.1 VON Ubuntu WARTUNGSARBEITER Victor Vieux <[email protected]> Führen Sie apt-get update und apt-get install -y inotify-tools aus. nginx apache2 openssh-server # Installieren Sie inotify-tools, nginx, apache2, openssh-server basierend auf dem übergeordneten Image von Ubuntu, um ein neues Nginx-Image zu erstellen. # Firefox über VNC # #VERSION 0.3 VON Ubuntu # Installieren Sie vnc,xvfb, um eine „gefälschte“ Anzeige und Firefox zu erstellen Führen Sie apt-get update und apt-get install -y x11vnc Firefox aus. Führen Sie mkdir /.vnc aus. # Richten Sie ein Passwort ein RUN x11vnc -storepasswd 1234 ~/.vnc/passwd #Firefox automatisch starten Führen Sie den Befehl bash -c 'echo "firefox" >> /.bashrc' aus. EXPOSE 5900 CMD ["x11vnc", "-für immer", "-usepw", "-erstellen"] # Installieren Sie basierend auf dem übergeordneten Ubuntu-Image die Firefox- und VNC-Software. Nach dem Start können Benutzer Firefox über VNC über Port 5900 verwenden. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Einführung in MySQL-Anweisungskommentare
>>: js implementiert einen einzigen Klick zum Ändern der Tabelle
HTML besteht aus Tags und Attributen, die zusamme...
MySQL UTF-8-Kodierung MySQL unterstützt UTF-8 sei...
Ergebnisse erzielen Implementierungscode html <...
Heute fiel mir plötzlich ein, die Produktionsprinz...
Inhaltsverzeichnis 1. Was ist Pinia? 2. Pinia ist...
Lösung 1: Verwenden Sie bedingten Import im HTML-...
Vorwort Die Rolle des Prozessmanagements: Integri...
Inhaltsverzeichnis Zeitzonenkonfiguration in Djan...
Inhaltsverzeichnis 1. Projektanforderungen 2. Dok...
1. Allgemeine Verbindungen für MySQL INNER JOIN (...
In diesem Artikelbeispiel wird der spezifische Co...
1. Laden Sie 4 RPM-Pakete herunter mysql-communit...
1. Szenariobeschreibung: Mein Kollege hat mir gez...
Offizielle Website-Adresse der Echarts-Komponente...
[LeetCode] 184. Abteilung Höchstes Gehalt Die Mit...