Computerhaus Quickborn

Python offline installieren​

Lesen Sie, wie “Airgapped”-Python geht.attem | shutterstock.com Moderne Softwareentwicklung setzt so gut wie immer voraus, dass eine konstante Netzwerkverbindung zur Verfügung steht. Ist diese ausfallaffin oder aus guten Gründen überhaupt nicht vorhanden, müssen Python-Entwickler zwei grundlegende Voraussetzungen erfüllen, um die Programmiersprache (und zugehörige Packages) trotzdem einrichten zu können: Sie brauchen einen zweiten Rechner mit Netzwerkverbindung. Sie müssen auf den isolierten Rechner manuell Dateien kopieren und diese installieren können. Die damit verbundenen Nachteile: Es ist ein aufwändiges Verfahren, das Flexibilitätseinbußen nach sich zieht. Developer, die dennoch offline mit Python arbeiten wollen oder müssen, sollten vorab wissen, was Sie dazu brauchen. Denn insbesondere mit Blick auf Drittanbieterabhängigkeiten kann es sich komplex gestalten, die Programmiersprache ohne Netzwerkverbindung einzurichten. In diesem Tutorial lesen Sie, wie Sie „Airgapped“-Python trotzdem zuverlässig in drei Schritten umsetzen. 1. Komponenten erfassen Im ersten Schritt empfiehlt es sich, alle Komponenten aufzulisten, die für Ihr Python-Projekt nötig sind. Diese lassen sich allgemein in zwei wesentliche Kategorien unterteilen: Python selbst und die zugehörigen Packages. Python Ist weder die richtige Python-Laufzeitumgebung noch die richtige -Edition auf dem Zielsystem vorhanden, müssen Sie das nachholen. Wenn Sie mit Windows oder macOS arbeiten, ist dazu nicht viel mehr erforderlich als das entsprechende Executable herunterzuladen. Für Linux-Benutzer gestaltet sich der Prozess deutlich komplexer – und variiert je nach Packet-Management-System. Für Ubuntu/Debian-Systeme steht zum Beispiel mit apt-offline eine Utility zur Verfügung, um offline installierbare Packages zu beziehen. Python-Packages Python-Pakete können als eigenständige .whl-Dateien verteilt werden. Die Installation ist denkbar einfach und erfordert lediglich den Befehl: pip install /path/to/file.whl. Ebenso simpel gestaltet es sich, wheels-Dateien über pip herunterzuladen: Der Befehl pip download ruft die .whl-Datei für das betreffende Paket ab und speichert sie im aktuellen Arbeitsverzeichnis. Sie können ihn auch dazu nutzen, alle Anforderungen für ein Package aus einer requirements.txt-Datei zu „ziehen“. Das geht mit: pip download -r . Bei der Verwendung von pip download gilt es, zwei wichtige Dinge zu beachten. Python-Pakete können Abhängigkeiten aufweisen – und Sie sollten alle auf dem Zettel haben, die für Ihr Projekt nötig sind. Idealerweise nutzen Sie dafür eine tatsächlich installierte Kopie der betreffenden Packages. Dazu gehen Sie wie folgt vor: Erstellen Sie eine virtuelle Umgebung. Dort installieren Sie alles, was Sie für Ihr Projekt benötigen. Schreiben Sie die Package-Liste mit pip freeze in eine Datei. Die kann auch als requirements.txt verwendet werden. Viele Packages sind von Python-Tools wie setuptools und wheel abhängig. Es ist deshalb empfehlenswert, diese direkt mit in die Liste aufzunehmen. Wichtig: Denken Sie daran, dass pip stets mit der Python-Version genutzt werden sollte, die auch auf dem Zielrechner zum Einsatz kommen soll. Ist das nicht möglich, können Sie auch --python-version übergeben. Das signalisiert pip download, die Python-Version entsprechend zu spezifizieren. Falls Sie .whl-Dateien manuell über PyPI herunterladen möchten, können Sie die Installationsdateien für jedes PyPI-Projekt direkt über dessen Seite herunterladen. Möglicherweise entspricht dabei der Dateinamen nicht Ihrer Python-Version. Das stellt aber nicht unbedingt ein Problem dar: Wheels-Dateien mit einer Kennung im Namen wie py3-none-any sind in der Regel mit den meisten aktuellen Versionen von Python kompatibel. 2. Interpreter & Apps einrichten Nachdem Sie die notwendigen Files auf das Zielsystem kopiert haben, gilt es, den Interpreter einzurichten. Wie dieser Prozess abläuft, hängt ebenfalls davon ab, welches Betriebssystem Sie nutzen. Unter Windows und macOS ist erneut lediglich ein Executable erforderlich. Im Fall von Linux verhält sich leider jeder Package Manager anders, wenn es darum geht, aus einem Offline-Package zu installieren (das gilt auch für die dafür notwendige Syntax). Die erforderlichen Informationen entnehmen Sie der Dokumentation des jeweiligen Package Managers Ihrer Distribution. Wenn Sie die Anforderungen für Ihre Python-Anwendung einrichten möchten, erstellen Sie dazu wie gewohnt eine virtuelle Umgebung für die App – und führen pip aus: pip install --no-index -f /path/to/wheels Hierbei ist die Datei, die die Projektanforderungen enthält. Mit --no-index wird pip dazu gezwungen, PyPI nicht auf Packages zu überprüfen. Die Option -f ermöglicht es, einen Pfad bereitzustellen, über den pip nach .whl-Dateien suchen soll. Hier geben Sie das Verzeichnis an, in das Sie diese Dateien kopiert haben. Für eine In-Place-Installation des Packages verwenden Sie folgende Befehlsvariante: pip install -e . --no-index -f /path/to/wheels Hierbei werden sämtliche Projektanforderungen verwendet, die in pyproject.toml vorliegen. 3. Drittanbieter-Packages installieren Komplex wird es (wie eingangs bereits erwähnt), wenn Drittanbieter-Abhängigkeiten ins Spiel kommen, die nicht als Python-Wheels verpackt sind. Nutzen Sie beispielsweise ein Python-Package mit einer C-Extension und installieren dieses nicht über ein vorkompiliertes Binary Wheel, versucht der Installationsprozess einen C-Compiler zu finden, um die Extension zu erstellen.   Soll heißen: Sie müssen auch sämtliche Build-Abhängigkeiten von Drittanbietern kopieren und einrichten. Die schlechte Nachricht ist dabei, dass die meisten davon nicht explizit in Python-Package-Manifesten aufgeführt sind, weil kein Mechanismus dafür existiert – im Gegensatz zu Drittanbieter-Distributionen wie Anaconda. Eine Komponente, die Python-Packages häufig fehlt, ist ein C-Compiler. Dieser kommt für gewöhnlich zum Einsatz, um CPython-Extensions aus Quellcode zu erstellen. Unter Windows ist das im Regelfall der Microsoft Visual C++ Compiler (MSVC), da CPython unter Windows damit kompiliert wird. Um MSVC zu nutzen, benötigen Sie jedoch nicht Visual Studio in vollem Umfang: Es gibt die Möglichkeit, eine abgespeckte, Kommandozeilen-Version von MSVC zu installieren. Und zwar über das Visual Studio C++ Build Tools-Package (siehe untenstehendes Youtube-Video). Ein Offline-Installations-Package von Visual Studio zu erstellen, um es lokal zu installieren, ist leider ein nicht minder komplexer Prozess. Dazu ist unter anderem eine „Local Layout“-Installation der benötigten Dateien nötig. Die bewirkt im Grunde genommen, dass nur die notwendigen Befehlszeilen-Komponenten von Visual Studio auf dem (vernetzten) Rechner installiert werden. Dieses Layout gilt es dann auf die isolierte Maschine zu übertragen – und zu installieren. (fm) Sie wollen weitere interessante Beiträge zu diversen Themen aus der IT-Welt lesen? Unsere kostenlosen Newsletter liefern Ihnen alles, was IT-Profis wissen sollten – direkt in Ihre Inbox! 

Python offline installieren​ Lesen Sie, wie “Airgapped”-Python geht.attem | shutterstock.com Moderne Softwareentwicklung setzt so gut wie immer voraus, dass eine konstante Netzwerkverbindung zur Verfügung steht. Ist diese ausfallaffin oder aus guten Gründen überhaupt nicht vorhanden, müssen Python-Entwickler zwei grundlegende Voraussetzungen erfüllen, um die Programmiersprache (und zugehörige Packages) trotzdem einrichten zu können: Sie brauchen einen zweiten Rechner mit Netzwerkverbindung. Sie müssen auf den isolierten Rechner manuell Dateien kopieren und diese installieren können. Die damit verbundenen Nachteile: Es ist ein aufwändiges Verfahren, das Flexibilitätseinbußen nach sich zieht. Developer, die dennoch offline mit Python arbeiten wollen oder müssen, sollten vorab wissen, was Sie dazu brauchen. Denn insbesondere mit Blick auf Drittanbieterabhängigkeiten kann es sich komplex gestalten, die Programmiersprache ohne Netzwerkverbindung einzurichten. In diesem Tutorial lesen Sie, wie Sie „Airgapped“-Python trotzdem zuverlässig in drei Schritten umsetzen. 1. Komponenten erfassen Im ersten Schritt empfiehlt es sich, alle Komponenten aufzulisten, die für Ihr Python-Projekt nötig sind. Diese lassen sich allgemein in zwei wesentliche Kategorien unterteilen: Python selbst und die zugehörigen Packages. Python Ist weder die richtige Python-Laufzeitumgebung noch die richtige -Edition auf dem Zielsystem vorhanden, müssen Sie das nachholen. Wenn Sie mit Windows oder macOS arbeiten, ist dazu nicht viel mehr erforderlich als das entsprechende Executable herunterzuladen. Für Linux-Benutzer gestaltet sich der Prozess deutlich komplexer – und variiert je nach Packet-Management-System. Für Ubuntu/Debian-Systeme steht zum Beispiel mit apt-offline eine Utility zur Verfügung, um offline installierbare Packages zu beziehen. Python-Packages Python-Pakete können als eigenständige .whl-Dateien verteilt werden. Die Installation ist denkbar einfach und erfordert lediglich den Befehl: pip install /path/to/file.whl. Ebenso simpel gestaltet es sich, wheels-Dateien über pip herunterzuladen: Der Befehl pip download ruft die .whl-Datei für das betreffende Paket ab und speichert sie im aktuellen Arbeitsverzeichnis. Sie können ihn auch dazu nutzen, alle Anforderungen für ein Package aus einer requirements.txt-Datei zu „ziehen“. Das geht mit: pip download -r . Bei der Verwendung von pip download gilt es, zwei wichtige Dinge zu beachten. Python-Pakete können Abhängigkeiten aufweisen – und Sie sollten alle auf dem Zettel haben, die für Ihr Projekt nötig sind. Idealerweise nutzen Sie dafür eine tatsächlich installierte Kopie der betreffenden Packages. Dazu gehen Sie wie folgt vor: Erstellen Sie eine virtuelle Umgebung. Dort installieren Sie alles, was Sie für Ihr Projekt benötigen. Schreiben Sie die Package-Liste mit pip freeze in eine Datei. Die kann auch als requirements.txt verwendet werden. Viele Packages sind von Python-Tools wie setuptools und wheel abhängig. Es ist deshalb empfehlenswert, diese direkt mit in die Liste aufzunehmen. Wichtig: Denken Sie daran, dass pip stets mit der Python-Version genutzt werden sollte, die auch auf dem Zielrechner zum Einsatz kommen soll. Ist das nicht möglich, können Sie auch --python-version übergeben. Das signalisiert pip download, die Python-Version entsprechend zu spezifizieren. Falls Sie .whl-Dateien manuell über PyPI herunterladen möchten, können Sie die Installationsdateien für jedes PyPI-Projekt direkt über dessen Seite herunterladen. Möglicherweise entspricht dabei der Dateinamen nicht Ihrer Python-Version. Das stellt aber nicht unbedingt ein Problem dar: Wheels-Dateien mit einer Kennung im Namen wie py3-none-any sind in der Regel mit den meisten aktuellen Versionen von Python kompatibel. 2. Interpreter & Apps einrichten Nachdem Sie die notwendigen Files auf das Zielsystem kopiert haben, gilt es, den Interpreter einzurichten. Wie dieser Prozess abläuft, hängt ebenfalls davon ab, welches Betriebssystem Sie nutzen. Unter Windows und macOS ist erneut lediglich ein Executable erforderlich. Im Fall von Linux verhält sich leider jeder Package Manager anders, wenn es darum geht, aus einem Offline-Package zu installieren (das gilt auch für die dafür notwendige Syntax). Die erforderlichen Informationen entnehmen Sie der Dokumentation des jeweiligen Package Managers Ihrer Distribution. Wenn Sie die Anforderungen für Ihre Python-Anwendung einrichten möchten, erstellen Sie dazu wie gewohnt eine virtuelle Umgebung für die App – und führen pip aus: pip install --no-index -f /path/to/wheels Hierbei ist die Datei, die die Projektanforderungen enthält. Mit --no-index wird pip dazu gezwungen, PyPI nicht auf Packages zu überprüfen. Die Option -f ermöglicht es, einen Pfad bereitzustellen, über den pip nach .whl-Dateien suchen soll. Hier geben Sie das Verzeichnis an, in das Sie diese Dateien kopiert haben. Für eine In-Place-Installation des Packages verwenden Sie folgende Befehlsvariante: pip install -e . --no-index -f /path/to/wheels Hierbei werden sämtliche Projektanforderungen verwendet, die in pyproject.toml vorliegen. 3. Drittanbieter-Packages installieren Komplex wird es (wie eingangs bereits erwähnt), wenn Drittanbieter-Abhängigkeiten ins Spiel kommen, die nicht als Python-Wheels verpackt sind. Nutzen Sie beispielsweise ein Python-Package mit einer C-Extension und installieren dieses nicht über ein vorkompiliertes Binary Wheel, versucht der Installationsprozess einen C-Compiler zu finden, um die Extension zu erstellen.   Soll heißen: Sie müssen auch sämtliche Build-Abhängigkeiten von Drittanbietern kopieren und einrichten. Die schlechte Nachricht ist dabei, dass die meisten davon nicht explizit in Python-Package-Manifesten aufgeführt sind, weil kein Mechanismus dafür existiert – im Gegensatz zu Drittanbieter-Distributionen wie Anaconda. Eine Komponente, die Python-Packages häufig fehlt, ist ein C-Compiler. Dieser kommt für gewöhnlich zum Einsatz, um CPython-Extensions aus Quellcode zu erstellen. Unter Windows ist das im Regelfall der Microsoft Visual C++ Compiler (MSVC), da CPython unter Windows damit kompiliert wird. Um MSVC zu nutzen, benötigen Sie jedoch nicht Visual Studio in vollem Umfang: Es gibt die Möglichkeit, eine abgespeckte, Kommandozeilen-Version von MSVC zu installieren. Und zwar über das Visual Studio C++ Build Tools-Package (siehe untenstehendes Youtube-Video). Ein Offline-Installations-Package von Visual Studio zu erstellen, um es lokal zu installieren, ist leider ein nicht minder komplexer Prozess. Dazu ist unter anderem eine „Local Layout“-Installation der benötigten Dateien nötig. Die bewirkt im Grunde genommen, dass nur die notwendigen Befehlszeilen-Komponenten von Visual Studio auf dem (vernetzten) Rechner installiert werden. Dieses Layout gilt es dann auf die isolierte Maschine zu übertragen – und zu installieren. (fm) Sie wollen weitere interessante Beiträge zu diversen Themen aus der IT-Welt lesen? Unsere kostenlosen Newsletter liefern Ihnen alles, was IT-Profis wissen sollten – direkt in Ihre Inbox!

Lesen Sie, wie “Airgapped”-Python geht.attem | shutterstock.com Moderne Softwareentwicklung setzt so gut wie immer voraus, dass eine konstante Netzwerkverbindung zur Verfügung steht. Ist diese ausfallaffin oder aus guten Gründen überhaupt nicht vorhanden, müssen Python-Entwickler zwei grundlegende Voraussetzungen erfüllen, um die Programmiersprache (und zugehörige Packages) trotzdem einrichten zu können: Sie brauchen einen zweiten Rechner mit Netzwerkverbindung. Sie müssen auf den isolierten Rechner manuell Dateien kopieren und diese installieren können. Die damit verbundenen Nachteile: Es ist ein aufwändiges Verfahren, das Flexibilitätseinbußen nach sich zieht. Developer, die dennoch offline mit Python arbeiten wollen oder müssen, sollten vorab wissen, was Sie dazu brauchen. Denn insbesondere mit Blick auf Drittanbieterabhängigkeiten kann es sich komplex gestalten, die Programmiersprache ohne Netzwerkverbindung einzurichten. In diesem Tutorial lesen Sie, wie Sie „Airgapped“-Python trotzdem zuverlässig in drei Schritten umsetzen. 1. Komponenten erfassen Im ersten Schritt empfiehlt es sich, alle Komponenten aufzulisten, die für Ihr Python-Projekt nötig sind. Diese lassen sich allgemein in zwei wesentliche Kategorien unterteilen: Python selbst und die zugehörigen Packages. Python Ist weder die richtige Python-Laufzeitumgebung noch die richtige -Edition auf dem Zielsystem vorhanden, müssen Sie das nachholen. Wenn Sie mit Windows oder macOS arbeiten, ist dazu nicht viel mehr erforderlich als das entsprechende Executable herunterzuladen. Für Linux-Benutzer gestaltet sich der Prozess deutlich komplexer – und variiert je nach Packet-Management-System. Für Ubuntu/Debian-Systeme steht zum Beispiel mit apt-offline eine Utility zur Verfügung, um offline installierbare Packages zu beziehen. Python-Packages Python-Pakete können als eigenständige .whl-Dateien verteilt werden. Die Installation ist denkbar einfach und erfordert lediglich den Befehl: pip install /path/to/file.whl. Ebenso simpel gestaltet es sich, wheels-Dateien über pip herunterzuladen: Der Befehl pip download ruft die .whl-Datei für das betreffende Paket ab und speichert sie im aktuellen Arbeitsverzeichnis. Sie können ihn auch dazu nutzen, alle Anforderungen für ein Package aus einer requirements.txt-Datei zu „ziehen“. Das geht mit: pip download -r . Bei der Verwendung von pip download gilt es, zwei wichtige Dinge zu beachten. Python-Pakete können Abhängigkeiten aufweisen – und Sie sollten alle auf dem Zettel haben, die für Ihr Projekt nötig sind. Idealerweise nutzen Sie dafür eine tatsächlich installierte Kopie der betreffenden Packages. Dazu gehen Sie wie folgt vor: Erstellen Sie eine virtuelle Umgebung. Dort installieren Sie alles, was Sie für Ihr Projekt benötigen. Schreiben Sie die Package-Liste mit pip freeze in eine Datei. Die kann auch als requirements.txt verwendet werden. Viele Packages sind von Python-Tools wie setuptools und wheel abhängig. Es ist deshalb empfehlenswert, diese direkt mit in die Liste aufzunehmen. Wichtig: Denken Sie daran, dass pip stets mit der Python-Version genutzt werden sollte, die auch auf dem Zielrechner zum Einsatz kommen soll. Ist das nicht möglich, können Sie auch –python-version übergeben. Das signalisiert pip download, die Python-Version entsprechend zu spezifizieren. Falls Sie .whl-Dateien manuell über PyPI herunterladen möchten, können Sie die Installationsdateien für jedes PyPI-Projekt direkt über dessen Seite herunterladen. Möglicherweise entspricht dabei der Dateinamen nicht Ihrer Python-Version. Das stellt aber nicht unbedingt ein Problem dar: Wheels-Dateien mit einer Kennung im Namen wie py3-none-any sind in der Regel mit den meisten aktuellen Versionen von Python kompatibel. 2. Interpreter & Apps einrichten Nachdem Sie die notwendigen Files auf das Zielsystem kopiert haben, gilt es, den Interpreter einzurichten. Wie dieser Prozess abläuft, hängt ebenfalls davon ab, welches Betriebssystem Sie nutzen. Unter Windows und macOS ist erneut lediglich ein Executable erforderlich. Im Fall von Linux verhält sich leider jeder Package Manager anders, wenn es darum geht, aus einem Offline-Package zu installieren (das gilt auch für die dafür notwendige Syntax). Die erforderlichen Informationen entnehmen Sie der Dokumentation des jeweiligen Package Managers Ihrer Distribution. Wenn Sie die Anforderungen für Ihre Python-Anwendung einrichten möchten, erstellen Sie dazu wie gewohnt eine virtuelle Umgebung für die App – und führen pip aus: pip install –no-index -f /path/to/wheels Hierbei ist die Datei, die die Projektanforderungen enthält. Mit –no-index wird pip dazu gezwungen, PyPI nicht auf Packages zu überprüfen. Die Option -f ermöglicht es, einen Pfad bereitzustellen, über den pip nach .whl-Dateien suchen soll. Hier geben Sie das Verzeichnis an, in das Sie diese Dateien kopiert haben. Für eine In-Place-Installation des Packages verwenden Sie folgende Befehlsvariante: pip install -e . –no-index -f /path/to/wheels Hierbei werden sämtliche Projektanforderungen verwendet, die in pyproject.toml vorliegen. 3. Drittanbieter-Packages installieren Komplex wird es (wie eingangs bereits erwähnt), wenn Drittanbieter-Abhängigkeiten ins Spiel kommen, die nicht als Python-Wheels verpackt sind. Nutzen Sie beispielsweise ein Python-Package mit einer C-Extension und installieren dieses nicht über ein vorkompiliertes Binary Wheel, versucht der Installationsprozess einen C-Compiler zu finden, um die Extension zu erstellen.   Soll heißen: Sie müssen auch sämtliche Build-Abhängigkeiten von Drittanbietern kopieren und einrichten. Die schlechte Nachricht ist dabei, dass die meisten davon nicht explizit in Python-Package-Manifesten aufgeführt sind, weil kein Mechanismus dafür existiert – im Gegensatz zu Drittanbieter-Distributionen wie Anaconda. Eine Komponente, die Python-Packages häufig fehlt, ist ein C-Compiler. Dieser kommt für gewöhnlich zum Einsatz, um CPython-Extensions aus Quellcode zu erstellen. Unter Windows ist das im Regelfall der Microsoft Visual C++ Compiler (MSVC), da CPython unter Windows damit kompiliert wird. Um MSVC zu nutzen, benötigen Sie jedoch nicht Visual Studio in vollem Umfang: Es gibt die Möglichkeit, eine abgespeckte, Kommandozeilen-Version von MSVC zu installieren. Und zwar über das Visual Studio C++ Build Tools-Package (siehe untenstehendes Youtube-Video). Ein Offline-Installations-Package von Visual Studio zu erstellen, um es lokal zu installieren, ist leider ein nicht minder komplexer Prozess. Dazu ist unter anderem eine „Local Layout“-Installation der benötigten Dateien nötig. Die bewirkt im Grunde genommen, dass nur die notwendigen Befehlszeilen-Komponenten von Visual Studio auf dem (vernetzten) Rechner installiert werden. Dieses Layout gilt es dann auf die isolierte Maschine zu übertragen – und zu installieren. (fm) Sie wollen weitere interessante Beiträge zu diversen Themen aus der IT-Welt lesen? Unsere kostenlosen Newsletter liefern Ihnen alles, was IT-Profis wissen sollten – direkt in Ihre Inbox! 

Nach oben scrollen
×