Installation von Python in Alpine Linux

1. Einleitung

Um Python in Alpine Linux zu installieren, können wir ein Alpine Linux-Image erstellen, das mit einer Python-Installation geliefert wird. Alternativ können wir Python auf einem laufenden Container installieren.

In diesem Tutorial werden wir diese beiden Ansätze für die Installation von Python in Alpine Linux besprechen.

2. Erstellen eines Python-Alpine-Abbilds

Um ein Python Alpine Linux-Image zu erstellen, verwenden wir ein Dockerfile. Wir beginnen mit einem Alpine Linux-Basisimage:

$ cat Dockerfile

FROM alpine:latest

Danach fügen wir den Befehl hinzu, der python3 und pip installiert:

$ cat Dockerfile

FROM alpine:latest
RUN apk --add no-cache python3 py3-pip

Wir haben apk add mit ––no-cache angegeben, um sicherzustellen, dass apk den Index nicht zwischenspeichert. Auf diese Weise ist es wahrscheinlicher, dass das image leicht bleibt.

Mit der RUN-Anweisung installieren wir nicht nur python3, sondern auch pip. pip ist vielleicht der einfachste Weg, Python-Pakete zu installieren, daher kann es nützlich sein, wenn ein Container verwendet wird, der aus dem folgenden Image erstellt wurde.

Wenn wir keine Python-Pakete installieren, können wir nur die ausführbare Datei python3 installieren.

2.1. Erstellen des Images

So wie es ist, ist unser Dockerfile einsatzbereit. Also erstellen wir daraus ein Image mit docker build:

$ docker build . -t python-alpine-linux

Danach erstellen und führen wir einen Container mit docker run aus, indem wir unser python-alpine-linux-Image verwenden:

$ docker run --name sdohn -dit python-alpine-linux

 

Durch Hinzufügen der Optionen -d, -i und -t wird sichergestellt, dass der erstellte Container getrennt wird und über ein interaktives Terminal verfügt.

2.2. Testen der Installation

Nachdem wir nun einen Container aus unserem Image erstellt haben, bestätigen wir, dass die Python-Installation funktioniert. Zu diesem Zweck führen wir einen python3-Befehl im Container mit docker exec aus:

 

docker exec sdohn python3 --version

 

 

 

 

Python 3.11.8

 

Wir haben einen Befehl ausgeführt, um nach der Python-Version im sdohn-Container zu suchen. Da die Python-Installation ein Erfolg war, haben wir die erwartete Ausgabe erhalten.

Probieren wir auch pip aus :

 

$ docker exec sdohn pip --version

 

 

 

pip 23.3.1 from /usr/lib/python3.11/site-packages/pip (python 3.11)

 

Die Ausgabe bestätigt, dass pip funktioniert.

Wir können der RUN-Anweisung einen Befehl hinzufügen, der einen symbolischen Link von /usr/bin/python3 zu /usr/bin/python erstellt:

$ cat Dockerfile

FROM alpine:latest

RUN apk add --no-cache python3 py3-pip

&& ln -sf python3 /usr/bin/python

 

Danach können wir python3 als python ausführen.

3. Installieren von Python auf einem Alpine-Container

Wir können Python auf einem Alpine Linux-Container installieren, indem wir denselben Befehl verwenden, den wir an die RUN-Anweisung in der Dockerfile übergeben haben. Lassen Sie uns dies veranschaulichen, indem wir einen Container aus alpine:latest, einem offiziellen Alpine Docker-Image, erstellen:

 

$ docker run --name sdohn2 -dit alpine

 

Bevor wir versuchen, python3 auf dem sdohn2-Container zu installieren , überprüfen wir, ob python3 bereits installiert ist:

 

$ docker exec sdohn2 python3 --version

 

 

 

OCI runtime exec failed: exec failed: unable to start container process: exec: "python3": executable file not found in $PATH: unknown

 

Das Ausführen eines python3-Befehls im Container hat die obige Fehlermeldung ausgelöst. Die Fehlermeldung bestätigt, dass keine python3-Installation im Container vorhanden ist.

Um dies zu beheben, installieren wir python3 in diesem Container mit docker exec:

 

$ docker exec sdohn2 apk add --no-cache python3 py3-pip

 

Lassen Sie uns noch einmal die Python-Installation überprüfen:

 

$ docker exec sdohn2 python3 --version

 

 

 

Python 3.11.8

 

Die obigen Schritte sind anwendbar, wenn der Container bereits ausgeführt wird. Wenn wir jedoch die Python-Installation von Anfang an im Container haben möchten, können wir den Befehl apk add zusammen mit docker run ausführen:

$ docker run --name sdohn3 -dit alpine apk add --no-cache python3 py3-pip

 

Noch einmal überprüfen wir die Installation:

$ docker exec sdohn3 python3 --version

 

 

 

Python 3.11.8

 

4. Schlussfolgerung

In diesem Artikel haben wir besprochen, wie Sie ein Alpine Linux-Image mit einer Python-Installation erstellen. Wir haben auch darüber gesprochen, wie man Python auf einem laufenden Alpine Linux-Container installiert. Zum Abschluss haben wir hervorgehoben, wie man Python installiert, während man einen Alpine-Container erstellt.

Dieser Beitrag wurde unter LINUX veröffentlicht. Setze ein Lesezeichen auf den Permalink.