Vorbereiten des Entwicklungsrechner
Auf dem Entwicklungsrechner benötigen wir
- falls möglich einen eigenen Nutzer, der nur für die Entwicklung der Pop-up-Platform da ist, wir nennen diese Rolle "platform-engineer"
- git, um auf das Pop-up-Platform Repo zuzugreifen
- Balena Etcher, um einen USB-Stick mit Ubuntu Server zu flashen (hierfür benötigt man Admin-Rechte)
- eine IDE (Integrierte Entwicklungsumgebung), z.B. VS Code, IntelliJ, PyCharm
- einen SSH Key, um einfacher mit dem MaaS Host zu kommunizieren
- Windows
- Mac
- Ubuntu
Vorbereitung unter Windows
Auf den meisten Dienst-PCs ist Windows installiert und man hat keine Admin-Rechte. Für das Flashen des USB-Sticks sind diese fehlenden Rechte ein Problem und man muss dafür einen anderen PC mit den entsprechenden Rechten nutzen. Einen neuen Benutzer kann man mit diesen Voraussetzungen auch nicht anlegen.
Installation von Git
Das ist einfach:
- gehe auf https://git-scm.com/download/win und lade den Installer heruntern.
- führe den Installer aus
- Richte Git ein: ** lege die einen git Account an (z.B. auf gitlab.com oder github.com) ** führe in der Git Bash diese Befehle aus, um deinen Benutzernamen und deine E-Mailadresse zu setzen
git config --global user.name "dein_username"
git config --global user.email "email_address"
Installation einer IDE
Suche dir eine IDE aus und folge den Installationsanweisungen. Beim ersten Öffnen wird sie dir ein paar Fragen zur Konfiguration stellen. Falls du keine Präferenzen hast, bleib einfach bei den Standardeinstellungen.
VS Code kannst du hier runterladen: https://code.visualstudio.com/
Balena Etcher installieren
Balena Etcher brauchen wir, um den USB Stick für die Installation von Ubuntu Server auf unserem Worker Node vorzubereiten. Hier kannst du Balena runterladen: https://etcher.balena.io/#download-etcher Wir empfehlen die portable Version.
- Download: https://etcher.balena.io/
Supported Operating Systems
- Linux (most distros)
- macOS 10.10 (Yosemite) and later
- Microsoft Windows 7 and later
Vorbereitung unter Mac
Für eine Anleitung zur Installation der verschiedenen Tools verewisen wir auf: https://sourabhbajaj.com/mac-setup/
User platform-engineer anlegen
Um die Entwicklung der Pop-up-Platform und die normale Nutzung des PCs sauber zu trennen, empfehlen wir das anlegen eines neuen Nutzers auf dem Entwicklungsrechner. Anleitungen dafür findet man zu genüge im Internet.
X-Code
X-Code liefert viele wichtige Tools für die Software-Entwicklung auf dem Mac.
Homebrew
Homebrew ist eine Paketverwaltung für Mac und Linux. Damit können wir einfacher Pakete und Tools installieren.
Zur Installation sind alle wichtigen Informationen unter https://brew.sh/ zu finden. Nach der Installation sollte man den Befehl "brew" noch zur PATH Variable hinzufügen.
Alternativ kannst du auch dem Setup-Guide-Link (oben) folgen.
Installation von Git
Nun, da wir homebrew haben, ist das ganz einfach. Siehe Setup-Guide.
Installation einer IDE
VS Code läuft auch auf Mac. Zur Abwechslung verweisen wir hier mal auf intellij. Dies kann man auf https://www.jetbrains.com/idea/ oder per Homebrew runterladen und installieren.
Balena Etcher installieren
Balena Etcher brauchen wir, um den USB Stick für die Installation von Ubuntu Server auf unserem Worker Node vorzubereiten. Hier kannst du Balena runterladen: https://etcher.balena.io/#download-etcher Wir empfehlen die portable Version.
Vorbereitung unter Ubuntu
User platform-engineer anlegen
Um die Entwicklung der Pop-up-Platform und die normale Nutzung des PCs sauber zu trennen, empfehlen wir das anlegen eines neuen Nutzers auf dem Entwicklungsrechner. Anleitungen dafür findet man zu genüge im Internet.
Installation von Git
Eine Anleitung findest du hier: https://www.digitalocean.com/community/tutorials/how-to-install-git-on-ubuntu-20-04-de
Auch hier muss man noch seinen Benutzer konfigurieren, siehe dazu den Abschnitt "Vorbereitung unter Windows"
Installation einer IDE
Suche dir eine IDE aus und folge den Installationsanweisungen. Beim ersten Öffnen wird sie dir ein paar Fragen zur Konfiguration stellen. Falls du keine Präferenzen hast, bleib einfach bei den Standardeinstellungen.
VS Code kannst du hier runterladen: https://code.visualstudio.com/
Für Ubuntu findest du es auch in der Software-Verwaltung.
Balena Etcher installieren
Balena Etcher brauchen wir, um den USB Stick für die Installation von Ubuntu Server auf unserem Worker Node vorzubereiten. Hier kannst du Balena runterladen: https://etcher.balena.io/#download-etcher Wir empfehlen die portable Version.
Nach dem Download muss die Datei noch als ausführbares Programm eingerichtet werden. Dafür per Rechtsklick auf die Datei klicken, "Eigenschaften" auswählen und im Tab "Zugriffsrechte" das Häkchen bei "Ausführen: Datei als Programm ausführen" setzen. Danach kann man das Programm per Doppelklick öffnen.
- Download: https://etcher.balena.io/
Supported Operating Systems
- Linux (most distros)
- macOS 10.10 (Yosemite) and later
- Microsoft Windows 7 and later
SSH
SSH, oder Secure Shell, wird verwendet, um sich sicher mit entfernten Servern zu verbinden. Es ermöglicht verschlüsselte Kommunikation und erlaubt die Ausführung von Befehlen, die Übertragung von Dateien und die Verwaltung von Systemen über eine sichere Verbindung. SSH wird oft für Fernwartung, Dateiübertragung und sichere Befehlsausführung verwendet.
Um einen SSH Key zu erzeugen, muss in einem Terminal also die Befehlszeile der Befehl ssh-keygen mit Parametern ausgeführt werden.
ssh-keygen -t ed25519
Nachdem du den Speicherort ausgewählt und ein Passwort festgelegt hast, wird dein SSH-Schlüssel erzeugt. Es wird eine öffentliche Schlüsseldatei (id_rsa.pub
) und eine private Schlüsseldatei (id_rsa
) erstellt. Den public Teil dieser Schlüssel nutzen wir später weiter.
Der private Schlüssel (id_rsa
) sollte sicher aufbewahrt werden und niemals geteilt werden. Die öffentliche Schlüsseldatei (id_rsa.pub
) kann auf Servern oder Diensten hinzugefügt werden, die SSH-Zugriff erfordern, indem sie zur authorized_keys
-Datei hinzugefügt wird.
Um einen SSH-Schlüssel von deinem Laptop auf einem entfernten Rechner zu installieren, kannst du den Befehl ssh-copy-id
verwenden.
Bitte denke daran, dass das Erzeugen und Verwenden von SSH-Schlüsseln ein sicherheitsrelevanter Prozess ist. Schütze deine privaten Schlüssel gut und teile sie nicht leichtfertig.
Glückwunsch! 🎉 Damit ist der ist Entwicklungs-PC eingerichtet und wir können uns nun dem Netzwerk und dem MaaS-Host zuwenden.
By the way: wenn du auf den Geschmack der Benutzung des Terminals (oder der Kommandozeile) gekommen bist, dann schau dir auch mal Oh My ZSH (ohmyz.sh) an.