[Docker] Einführung in die grundlegende Docker-Anweisung

Außerdem werde ich die Docker-Gebühr ein wenig belassen, daher möchte ich auch ein Memorandum schreiben. Dieses Mal werde ich kurz FROM, RUN und CMD vorstellen.

FROM Die Docker-Datei beschreibt das FROM, um das Basis-Image zu bestimmen. Wenn Sie das Image der neuesten Version von ex.ubuntu angeben

FROM ubuntu:latest

Bis Sie sich daran gewöhnt haben, ist es eine gute Idee, eines anzugeben, das alle benötigten Tools enthält. Sobald Sie sich daran gewöhnt haben, sollten Sie in Betracht ziehen, die gewünschten Tools nur mit dem Betriebssystem hinzuzufügen.

RUN Mit diesem Befehl können Sie die Anforderungen Ihres Servers nach Ihren Wünschen anpassen.

Beispiel: Erstellen Sie die Dateien test1.txt und test2.txt auf dem Image-Betriebssystem

Dockerfile


RUN touch test1.txt
RUN touch test2.txt

Es ist möglich, die Umgebung auf dem Image-Betriebssystem vorzubereiten, indem der Befehl "RUN" mit mehreren Zeilen ausgeführt wird. Für jeden "RUN" wird jedoch eine Ebene erstellt. Bitte beachten Sie, dass das Bild mit zunehmender Anzahl von Ebenen größer wird.

Einfallsreichtum, um Schichten zu reduzieren

Wenn Sie die Befehle zum Erstellen mehrerer Ebenen RUN, COPY und ADD verwenden müssen, verwenden Sie &&, um die Befehle zu verbinden. Wenn eine Zeile lang wird, ist die Docker-Datei schwer zu erkennen. Verwenden Sie daher \ (Schrägstrich), um die Zeile zu unterbrechen.

Dockerfile


RUN apt-get update
RUN apt-get install aaa
RUN apt-get install bbb
RUN apt-get install ccc

Dockerfile


RUN apt-get update && apt-get install aaa bbb ccc

↓ Wenn die Anzahl der Installationspakete zunimmt, wird es schwierig, sie zu erkennen. Ordnen Sie sie daher mit Zeilenumbrüchen an.

Dockerfile


RUN apt-get update && apt-get install \
aaa \
bbb \
ccc```

 Sie müssen die Ausführungsberechtigung y interaktiv eingeben. Wenn Sie also -y eingeben, was ja bedeutet, wird die Installation reibungslos ausgeführt.


#### **`Dockerfile`**
```docker

RUN apt-get update && apt-get install \
aaa \
bbb \
ccc

Nutzen Sie den Cache effektiv

Beim Schreiben zur Installation des Tools mit apt-get usw. wurden aaa und bbb nacheinander installiert. Verbinden Sie sie also und schreiben Sie ccc und versuchen Sie ... und jedes Mal, wenn Sie auf das Netzwerk zugreifen, um das Ausführungsergebnis zu erhalten Es wird auftreten.

Wenn Sie das Tool aaa bbb ccc installieren möchten

Dockerfile


RUN apt-get install \
aaa \
bbb

Da dies funktioniert hat, wird der Cache nicht verwendet, wenn Sie weiterhin ccc schreiben, und alles wird aus dem Netzwerk abgerufen.

Dockerfile


RUN apt-get install \
aaa \
bbb \
ccc

↓ Schreiben Sie zuerst einen anderen RUN.

Dockerfile


RUN apt-get install \
aaa \
bbb
RUN apt-get ccc

Zunächst werde ich versuchen, herauszufinden, ob es gut funktioniert, indem ich die später hinzuzufügenden Dinge teile. Hoffentlich können Sie den Zeitverlust von der Beschreibung bis zur Ausführung vermeiden, indem Sie in eine Zeile schreiben.

CMD

FROM ...
RUN ...
CMD ["bin/bash"]

Das Ende

Wenn Sie eine Umgebung wie einen einfachen Webserver mit den oben eingeführten Befehlen FROM, RUN, CMD erstellen möchten, können Sie diese erstellen. Docker ist praktisch, also versuchen Sie es bitte.

Recommended Posts

[Docker] Einführung in die grundlegende Docker-Anweisung
Einführung von Docker - Teil 1--
[Docker] Einführung in Docker Compose Grundlegende Zusammenfassung von Docker-Compose.yml
Einführung von pay.jp
Einführung von Milkode
Docker-Grundbefehl
Einführung von Docker Hub und Befehlen Selbstlernend ①
[Docker] Einführung grundlegender Optionen (Freigabe, Benutzer, Port, CPU / Speicher) während des Docker-Laufs
[Rails] Einführung von PAY.JP
Einführung der Benutzerauthentifizierung
Einführung in Java für Anfänger Grundkenntnisse der Java-Sprache ①
[Rails] Einführung in die Grundlagen der Entwicklung
Docker-Überwachung - Erläuterung der Grundlagen der Grundlagen
Über die einfache Bedienung von Docker
Ich habe nur von Docker gehört ...
Super grundlegende Verwendung von Eclipse
[Ruby] Grundlegende Befehlsliste
Zusammenfassung der Grundfunktionen von ImageJ
Docker Compact-Handbuch (1: Basic / Basic-Befehle)
Einführung von javaFX in Eclipse (April 2020)
Einführung in Linux Container / Docker (Teil 1)
Verstehen Sie den grundlegenden Mechanismus von log4j2.xml
[Rails] Einführung von Rubocop durch Anfänger
[Java] Grundtypen und Anweisungshinweise
Grundkenntnisse in Ruby on Rails
Grundlegende Verwendung von Java Optionaler Teil 1
Einführung in Linux Container / Docker (Teil 2)
Zusammenfassung häufig verwendeter Docker-Befehle
Von der Einführung bis zur Verwendung von byebug
Grundlegender Verarbeitungsablauf von Java Stream
Docker [Batch-Löschung von <none> -Tags]
[Grundkenntnisse in Java] Umfang der Variablen
Grundstruktur des Java-Quellcodes
[Zusammenfassung der technischen Bücher] Zusammenfassung der Lektüre "Einführung in die praktische Containerentwicklung von Docker / Kubernetes"