Das Schreiben eines Python-Skripts scheint einfach genug. Alles, was Sie tun müssen, ist, Ihren bevorzugten Texteditor zu öffnen, den Code einzugeben und das Skript auszuführen. Nun, es klingt zunächst einfach, aber Sie müssen bedenken, dass Ihr Code auf jedem PC funktionieren muss, den Sie verwenden. Wenn Sie in einer Umgebung arbeiten, in der es nicht über die richtigen Bibliotheken zum Ausführen des Programms verfügt, haben Sie kein Glück. Mit Docker können Sie Container verwenden, um Ihren Code auszuführen. Docker ähnelt dem, was Virtualisierung schon seit einiger Zeit macht. Virtualisierung basiert ausschließlich darauf, dass wir die Hardware, auf die wir zugreifen, effizienter nutzen wollen, und das ist der Hauptzweck. Der Hauptzweck von Docker besteht darin, uns dabei zu helfen, den Prozess der Softwareentwicklung und deren Bereitstellung zu rationalisieren. In diesem Artikel zeige ich Ihnen, wie Sie mein Python-Skript auf Docker ausführen.

Was ist Docker und warum ist es wichtig:

Docker ist eine umfassende Plattform, die unglaublich einfache und unkomplizierte Lösungen für Anwendungscontainer bietet. Die Entwicklung von Tools ist in den letzten Jahren viel komplizierter geworden, da Entwickler mehrere Sprachen, Frameworks, Architekturen und diskontinuierliche Schnittstellen in einem scheinbar endlosen Zyklus verwenden müssen. Entwicklungsteams, die an großen Projekten arbeiten, können sich leicht darüber vermischen, welche Technologien wann eingesetzt werden. Docker zielt darauf ab, diese Probleme durch die Vereinfachung von Prozessen zu lösen und gleichzeitig sicherzustellen, dass jeder Entwickler bei der Auswahl der Tools, die er während der gesamten Anwendungserstellung verwenden möchte, völlige Freiheit hat. Mit diesem neuen Tool kann jede Anwendung auf jedem Betriebssystem bereitgestellt werden!

So installieren Sie Docker:

Die Installation von Docker ist ziemlich einfach. Sie müssen nur zu diesem Link gehen, Docker für Ihr jeweiliges Betriebssystem herunterladen und installieren.

In Windows müssen Sie eine weitere Software zum Ausführen der Docker-Desktop-Software namens wsl_update_x64 installieren, die Sie hier herunterladen können.

Hinweis: Ich verwende Visual Studio-Code, Code-Editor für alle Prozesse. In VS Code können Sie die von Microsoft bereitgestellte offizielle Docker-Extinktion installieren. Es bietet Ihnen nette Funktionen zum Debuggen von Zeilen und zur automatischen Vervollständigung. Dies macht es mir leicht, mein Python-Skript auf Docker auszuführen.

Hinweis: Ich verwende Visual Studio Code, meinen bevorzugten Code-Editor, wenn ich mit Docker arbeite. Es bietet einem Entwickler nette Funktionen wie Debugging und Autovervollständigung. In VS Code können Sie die offizielle Docker-Erweiterung von Microsoft direkt aus der Visual Studio-Erweiterung installieren, was alles viel einfacher macht.

how-to-run-my-python-script-on-docker

So containerisieren Sie Python-Anwendungen:

Schritt 1: Erstellen Sie einen Ordner im lokalen Verzeichnis. Ich habe einen Ordner namens „python-docker“ erstellt.

Schritt 2: Erstellen Sie ein Python-Skript (main.py), das ausgeführt werden soll, und speichern Sie es im selben Ordner.

Zur Veranschaulichung habe ich der Datei main.py benutzerdefinierten Python-Code hinzugefügt. Das Skript zeigt einen einfachen orangefarbenen Kreis in der Mitte des Bildschirms an, der die Pygame-Bibliothek verwendet. Sie können jedes beliebige Skript/jeden gewünschten Code ausführen:

# Simple pygame program

# Import and initialize the pygame library
import pygame
pygame.init()

# Set up the drawing window
screen = pygame.display.set_mode([500, 500])

# Running the game until the user asks to quit
running = True
while running:

    # creating an if statement for the close button
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # Filling the background color with a gray
    screen.fill((55, 55, 55))

    # Drawing a solid purple circle in the center
    pygame.draw.circle(screen, (0, 0, 251), (251, 251), 74)
    # Flip the display
    pygame.display.flip()

# Done! Time to quit.
pygame.quit()

Schritt 3: Erstellen Sie einen Dateinamen „dockerfile“ im selben Verzeichnis wie unser Python-Skript.

Ein Dockerfile ist ein Skript, das Code enthält, der nacheinander ausgeführt wird, um ein neues Docker-Image zu erstellen, bei dem es sich im Wesentlichen um eine ausführbare Sammlung von Dateien handelt, die in einem anderen Satz ausführbarer Dateien zusammengestellt werden. In der Docker-Datei müssen wir drei verschiedene Dinge unterscheiden.

  1. Docker-Date: Eine Docker-Datei ist eine Blaupause zum Erstellen von Docker-Images.
  2. Docker image: Ein Docker-Image ist eine einfache Vorlage zum Ausführen von Docker-Containern.
  3. Docker container: Ein Docker-Container ist der eigentliche laufende Prozess, in dem wir unser Paketprojekt haben.

Um ein Dockerfile zum Erstellen von Docker-Images zu erstellen, müssen Sie einige der grundlegenden Befehle kennen.

FROM: Die FROM-Anweisung ist von entscheidender Bedeutung, da sie die Grundlage für das von Ihnen erstellte Basis-Image bildet. Und muss oben im Dockerfile platziert werden.

RUN: Dieser Befehl ist ein Schritt im Buildprozess eines Docker-Images. Auf diese Weise können Sie zusätzliche Pakete installieren, die für eine gute Ausführung Ihrer Docker-Images erforderlich sind.

CMD: Der CMD-Befehl wird verwendet, um den Standardbefehl zu definieren, der beim Ausführen des Containers ausgeführt werden soll. Es spielt keine Rolle, wie oft dieser Befehl hinzugefügt wird, da nur der letzte ausgeführt wird.

ADD: Mit ADD können Sie eine Datei von der URL in Ihre Docker-Images kopieren, vom ‚src‘ zum absoluten Pfad ‚dest‘. Sie können auch die Standardeigentümerschaft für neue Dateien einrichten.

Code in Dockerfile schreiben:

#Specifying the base image
FROM python:3.10
#here the dockerfile is pulling the python 3.10 from docker hub which already has python installed so we have all the things we need to have python in our container.

ADD main.py.
#Here we added the python file that we want to run in docker and define its location.

RUN pip install requests pygame
#Here we installed the dependencies, we are using the pygame library in our main.py file so we have to use the pip command for installing the library

CMD [ "python3" "./main.py" ]
#lastly we specified the entry command this line is simply running python ./main.py in our container terminal

Schritt 4: Erstellen Sie ein Docker-Image.

Der folgende Befehl erstellt das Docker-Image. Sie können einen beliebigen Namen für das Docker-Image verwenden, das ich mit Python-Spiel verwende:

docker image build -t python-game 
how-to-run-my-python-script-on-docker

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Images erstellt wurden:

docker images
how-to-run-my-python-script-on-docker

Sie können Ihre Bilder und Dateien auch über die Docker-Desktop-Software konfigurieren und darauf zugreifen und sie auf Ihren Docker-Hub hochladen, indem Sie Ihr Konto erstellen und sich anmelden.

how-to-run-my-python-script-on-docker

Um das Docker-Image auszuführen, verwenden Sie den folgenden Befehl:

docker run python-game
how-to-run-my-python-script-on-docker
how-to-run-my-python-script-on-docker

Letzte Worte

Wenn Sie eine Anwendung für sich selbst oder Ihre Kunden erstellen möchten, müssen Sie das Produkt einem Stresstest unterziehen und es vor dem offiziellen Startdatum in einer Live-Umgebung bereitstellen. Es gibt viele Möglichkeiten, dies zu tun, aber eine der effizientesten ist die Bereitstellung Ihrer App in der Cloud mit Docker. Zusammenfassend lässt sich sagen, dass Docker zu einem unverzichtbaren Entwicklungstool für Python-Entwickler geworden ist und weit über die Bereitstellung von Diensten für Kunden hinausgeht. Mit seiner serienreifen Architektur bietet es eine aus Erfahrung beeindruckende Infrastruktur. So führen Sie mein Python-Skript auf Docker aus.

Wir hoffen, Ihnen hat unser Artikel zum Ausführen von Python-Apps in Docker-Containern gefallen. Mit diesem Wissen wissen wir, dass Sie die Vorteile von Docker für Ihre Python-Anwendungen nutzen können.