Dieser Leitfaden hilft Ihnen beim Einrichten einer sauberen, isolierten Umgebung zum Ausführen von Dataquest-Tutorials. Während viele Tutorials direkt auf Ihrem Pc einwandfrei funktionieren, können bei einigen (insbesondere solchen mit Datenverarbeitungstools wie PySpark) je nach Betriebssystem oder vorhandener Softwarekonfiguration Probleme auftreten. Die von uns erstellte Laborumgebung stellt sicher, dass alles konsistent mit den richtigen Versionen von Python und anderen Instruments läuft, ohne Ihr Hauptsystem zu beeinträchtigen.
Was ist eine Laborumgebung?
Sie können sich dieses „Labor“ als separaten Arbeitsbereich nur für Ihre Dataquest-Tutorials vorstellen. Es handelt sich um einen kontrollierten Bereich, in dem Sie experimentieren und Code testen können, ohne dass dies Auswirkungen auf Ihren Hauptcomputer hat. So wie Wissenschaftler Labore für Experimente nutzen, nutzen wir dieses Entwicklungslabor, um Tutorials sicher durchzuarbeiten.
Vorteile für alle:
- Home windows-/Mac-Benutzer: Vermeiden Sie Fehler aufgrund von Systemunterschieden. Kein „Befehl nicht gefunden“ mehr oder PySpark findet Dateien nicht mehr
- Linux-Benutzer: Holen Sie sich die genauen Versionen von Python und Java, die für Tutorials benötigt werden, ohne dass es zu Konflikten mit den Paketen Ihres Programs kommt
- Alle: Halten Sie Ihre Tutorialarbeit von persönlichen Projekten getrennt. Ihr Code und Ihre Dateien werden regular gespeichert, alle von Ihnen installierten Pakete oder Systemänderungen bleiben jedoch im Lab enthalten
Wir verwenden ein Device namens Docker um diesen isolierten Arbeitsbereich zu erstellen. Stellen Sie sich das so vor, als ob Sie in Ihrem normalen Pc einen speziellen Pc nur für Tutorials hätten. Ihre Dateien und Ihr Code werden wie gewohnt gespeichert (Sie können sie mit Ihrem bevorzugten Editor bearbeiten), aber die Tutorial-Umgebung selbst bleibt sauber und getrennt von allem anderen auf Ihrem System.
Der lab Der von Ihnen verwendete Befehl erstellt diese Umgebung und spiegelt echte Information-Engineering-Workflows wider (die meisten Unternehmen verwenden isolierte Umgebungen wie diese, um die Konsistenz ihrer Groups sicherzustellen).
Docker installieren
Docker erstellt isolierte Linux-Umgebungen auf jedem Betriebssystem. Das bedeutet, dass Sie einen konsistenten Linux-Arbeitsbereich erhalten, unabhängig davon, ob Sie Home windows, Mac oder sogar Linux selbst verwenden. Wir verwenden es als einfaches Device, sodass keine Kenntnisse in der Container-Orchestrierung oder Cloud-Bereitstellung erforderlich sind.
Unter Home windows:
Laden Sie Docker Desktop herunter von docker.com/merchandise/docker-desktop. Führen Sie das Installationsprogramm aus, starten Sie Ihren Pc neu, wenn Sie dazu aufgefordert werden, und öffnen Sie Docker Desktop. Während der Ausführung wird in der Taskleiste ein Walsymbol angezeigt.
Hinweis: Docker Desktop aktiviert automatisch erforderliche Home windows-Funktionen wie WSL 2. Wenn eine Fehlermeldung zur Virtualisierung angezeigt wird, müssen Sie diese möglicherweise in den BIOS-Einstellungen Ihres Computer systems aktivieren. Suchen Sie on-line nach Ihrem Computermodell und klicken Sie auf „Virtualisierung aktivieren“, um bestimmte Schritte anzuzeigen.
Auf dem Mac:
Laden Sie Docker Desktop für Ihren Chiptyp (Intel oder Apple Silicon) über denselben Hyperlink herunter. Ziehen Sie Docker in Ihren Anwendungsordner und starten Sie es. Sie sehen den Wal in Ihrer Menüleiste.
Unter Linux:
Sie verfügen wahrscheinlich bereits über Docker. Wenn nicht, führen Sie diesen Befehl in Ihrem Terminal aus:
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
Überprüfen Sie, ob es funktioniert:
Öffnen Sie Ihr Terminal (PowerShell, Terminal oder Bash) und führen Sie Folgendes aus:
docker --version
docker compose model
Für beide Befehle sollten Versionsnummern angezeigt werden. Wenn die Meldung „Befehl nicht gefunden“ angezeigt wird, starten Sie Ihr Terminal oder Ihren Pc neu und versuchen Sie es erneut.
Holen Sie sich die Laborumgebung
Das Labor ist bereits im konfiguriert Datenquest tutorials Repository. Klonen oder herunterladen:
git clone https://github.com/dataquestio/tutorials.git
cd tutorials
Wenn Sie kein Git haben, laden Sie das Repository als ZIP-Datei von GitHub herunter und extrahieren Sie es.
Das Repository enthält alles, was Sie brauchen:
Dockerfile– Konfiguriert die Linux-Umgebung mit Python 3.11 und Java (für Spark)docker-compose.yml– Definiert die Laboreinrichtung- Tutorial-Ordner mit sämtlichem Code und Daten
Starten Sie Ihr Labor
Stellen Sie im Terminal Ihrer IDE sicher, dass Sie sich in der befinden tutorials Ordner und starten Sie das Labor:
docker compose run --rm lab
Beachten Sie, dass die Einrichtung bei der ersten Ausführung dieses Befehls 2–5 Minuten dauern kann.
Sie sind jetzt in Linux! Ihre Eingabeaufforderung ändert sich in etwas wie „ root@abc123:/tutorials#das ist Ihre Linux-Befehlszeile, in der alles wie erwartet funktioniert.
Der --rm Flag bedeutet, dass sich das Labor selbst bereinigt, wenn Sie es verlassen, und so Ihr System aufgeräumt hält.
Nutzung Ihres Labors
Sobald Sie sich in der Laborumgebung befinden, sehen Sie hier Ihren typischen Arbeitsablauf:
1. Navigieren Sie zu dem Tutorial, an dem Sie gerade arbeiten
# See all accessible tutorials
ls
# Enter a selected tutorial
cd pyspark-etl
2. Installieren Sie die Pakete nach Bedarf
Für jedes Tutorial sind möglicherweise unterschiedliche Pakete erforderlich:
# For PySpark tutorials
pip set up pyspark
# For information manipulation tutorials
pip set up pandas numpy
# For database connections
pip set up sqlalchemy psycopg2-binary
3. Führen Sie den Tutorial-Code aus
python <script-name>.py
Da der Code in einer standardisierten Linux-Umgebung ausgeführt wird, sollten keine Setup-Fehler auftreten.
4. Bearbeiten Sie die Dateien regular
Das Schöne an diesem Setup: Sie können weiterhin Ihren Lieblingseditor verwenden! Der tutorials Der Ordner auf Ihrem Pc wird mit dem Labor synchronisiert. Bearbeiten Sie Dateien in VS Code, PyCharm oder einem beliebigen Editor, und das Labor sieht Änderungen sofort.
5. Beenden Sie den Vorgang, wenn Sie fertig sind
Typ exit oder drücken Sie Strg+D, um das Labor zu verlassen. Die Umgebung reinigt sich automatisch.
Gängige Workflow-Beispiele
Ausführen eines PySpark-Tutorials:
docker compose run --rm lab
cd pyspark-etl
pip set up pyspark pandas
python principal.py
Arbeiten mit Jupyter-Notebooks:
docker compose run --rm -p 8888:8888 lab
pip set up jupyterlab
jupyter lab --ip=0.0.0.0 --allow-root --no-browser
# Open the URL it exhibits in your browser
Pakete zwischen Sitzungen installiert lassen:
Wenn Sie es satt haben, Pakete neu zu installieren, erstellen Sie eine Anforderungsdatei:
# After putting in packages, save them
pip freeze > necessities.txt
# Subsequent session, restore them
pip set up -r necessities.txt
Kurzreferenz
Der einzige Befehl, den Sie benötigen:
# From the tutorials folder
docker compose run --rm lab
Verlassen Sie das Labor:
exit # Or press Ctrl+D
Wo die Dinge sind:
- Tutorial-Code: Jeder Ordner in
/tutorials - Ihre Änderungen: Automatisch synchronisiert
- Datendateien: In jedem Tutorial
information/Ordner - Ausgabedateien: Speichern Sie sie im Tutorial-Ordner, um sie auf Ihrem Pc anzuzeigen
Hinzufügen von Diensten (Datenbanken usw.):
Für Tutorials, die PostgreSQL, MongoDB oder andere Dienste benötigen, können wir das erweitern docker-compose.yml. Derzeit verwaltet das Foundation-Setup alle Python- und PySpark-Tutorials.
Fehlerbehebung
-
„Es kann keine Verbindung zum Docker-Daemon hergestellt werden“
- Docker Desktop muss ausgeführt werden. Starten Sie es von Ihren Anwendungen aus.
-
„Docker Compose“ wurde nicht erkannt
-
Langsame Leistung unter Home windows
- Docker unter Home windows kann bei großen Datenmengen langsam sein. Für eine bessere Leistung speichern Sie Datendateien im Container und nicht im bereitgestellten Ordner.
-
„Berechtigung verweigert“ unter Linux
-
Fügen Sie Ihren Benutzer zur Docker-Gruppe hinzu:
sudo usermod -aG docker $USERDann melden Sie sich ab und wieder an.
-
Du bist bereit
Sie verfügen nun über eine Linux-Laborumgebung, die zu Produktionssystemen passt. Viel Spaß beim Experimentieren!
