Erstellen Sie ein Verzeichnis mit dem Mkdir-Befehl in einem Container mit Dockerfile

Isaac Tony 15 Februar 2024
Erstellen Sie ein Verzeichnis mit dem Mkdir-Befehl in einem Container mit Dockerfile

Docker-Container sind de facto zur Methode geworden, um Software und Abhängigkeiten in verschiedenen Umgebungen zu verwalten. Wenn Sie mit echten Anwendungen arbeiten, müssen Sie zweifellos ein Dockerfile erstellen, bevor Sie das Container-Image Ihrer Anwendung erstellen können.

Verzeichnis mit dem Befehl mkdir in einem Container mit Dockerfile erstellen

Abgesehen davon, dass Entwickler nur die Befehle zusammenstellen können, die zum Erstellen von Docker-Images erforderlich sind, können wir mit Dockerfiles noch so viel mehr tun. Um ein Docker-Image erfolgreich mit einer Docker-Datei zu erstellen, müssen Sie einige grundlegende Befehle kennen.

Einige der am häufigsten verwendeten Befehle sind:

  1. VON - Erstellt eine Ebene des übergeordneten Bildes/Basisbildes, das verwendet wird.
  2. WORKDIR - erlaubt uns, das Arbeitsverzeichnis festzulegen.
  3. KOPIEREN - erlaubt uns, aktuelle Verzeichnisinhalte in ein Verzeichnis im Container zu kopieren.
  4. PULL – Fügt Dateien aus Ihrem Docker-Repository hinzu.
  5. RUN - Befehl, der ausgeführt werden soll, wenn wir das Image erstellen möchten.
  6. CMD – gibt an, welcher Befehl ausgeführt werden soll, wenn der Container startet.
  7. ENV – Definiert Umgebungsvariablen, die während des Builds verwendet werden.
  8. ENTRYPOINT – gibt an, welcher Befehl ausgeführt werden soll, wenn der Container startet.
  9. MAINTAINER - Gibt den Urheber des Bildes an.

Mit den obigen Befehlen können wir eine Docker-Datei wie die folgende erstellen, die Python als Basis-Image verwendet.

Code:

#  base image
FROM Python

# Set your working directory
WORKDIR /var/www/
# Copy the necessary files
COPY ./app.py /var/www/app.py
COPY ./requirements.txt /var/www/requirements.txt

# Install the necessary packages
RUN pip install -r /var/www/requirements.txt
# Run the app
CMD ["echo", "Hello, Developer"]

Dieses Dockerfile ist Teil einer einfachen Flask-Anwendung, die nur eine Nachricht auf der Konsole ausgibt. Hier ist die Datei requirements.txt, wenn Sie daran interessiert sind, dieselbe Anwendung zu erstellen.

click==8.0.4
Flask==2.0.3
gunicorn==20.1.0
itsdangerous==2.1.0
Jinja2==3.0.3
MarkupSafe==2.1.0
Werkzeug==2.0.3

Die Hauptdatei app.py, die diese Hauptanwendungsdatei enthält, ist unten dargestellt.

Code:

from flask import Flask

app = Flask(__name__)


def hello():

    print("Hello, this is a simple Flask application")


hello()

Um nun ein Verzeichnis mit dem Befehl mkdir im Dateisystem unseres Docker-Containers zu erstellen, verwenden wir den Befehl RUN wie unten gezeigt.

#  base image
FROM Python

# Set your working directory
WORKDIR /var/www/
# Copy the necessary files
COPY ./app.py /var/www/app.py
COPY ./requirements.txt /var/www/requirements.txt

# Install the necessary packages
RUN pip install -r /var/www/requirements.txt
RUN mkdir -p /var/www/new_directory
# Run the app
CMD ["echo", "Hello, Developer"]

Mit dem Befehl RUN mkdir -p /var/www/new_directory können Sie ein Verzeichnis namens new_directory im Docker-Dateisystem erstellen, das wir schließlich mit einem Image erstellen werden, das mit der obigen Docker-Datei erstellt wurde.

Wir beginnen jedoch damit, ein Docker-Image basierend auf Python als Basis-Image zu erstellen, indem wir den folgenden Befehl ausführen.

isaac@DESKTOP-HV44HT6:~/my-app$ docker build -t new_image .

Ausgang:

docker neues Bild erstellen

Bestätigen Sie, dass wir erfolgreich ein Docker-Image aus der Docker-Datei erstellt haben, indem Sie den Befehl docker images unten verwenden.

$ docker images

Ausgang:

REPOSITORY   TAG       IMAGE ID       CREATED          SIZE
new_image    latest    7ab964c50876   13 minutes ago   932MB

Nachdem wir nun ein Docker-Image eingerichtet haben, können wir fortfahren und einen Docker-Container erstellen und bestätigen, ob das Verzeichnis mit dem Namen new_directory erstellt wurde. Wie unten gezeigt, müssen wir Bash innerhalb des Containers starten, um durch Verzeichnisse innerhalb des Docker-Containers zu navigieren.

$ docker run -it new_image bash
root@ea42f35d5404:/var/www#

Sie werden feststellen, dass das neue_Verzeichnis erstellt wurde, nachdem Sie die Dateien in diesem Verzeichnis aufgelistet haben. Darüber hinaus können wir auch im Verzeichnis selbst navigieren und sogar neue Dateien darin erstellen.

root@ea42f35d5404:/var/www# ls
app.py  new_directory  requirements.txt
root@ea42f35d5404:/var/www# cd new_directory
root@ea42f35d5404:/var/www/new_directory# ls
root@ea42f35d5404:/var/www/new_directory# touch new_file
root@ea42f35d5404:/var/www/new_directory# ls
new_file
Autor: Isaac Tony
Isaac Tony avatar Isaac Tony avatar

Isaac Tony is a professional software developer and technical writer fascinated by Tech and productivity. He helps large technical organizations communicate their message clearly through writing.

LinkedIn

Verwandter Artikel - Docker Directory