Python: In Produktion bereitstellen
Wie Sie Ihren Python-Code in wenigen Minuten in Produktion bereitstellen
👋 Willkommen bei der Stackhero-Dokumentation!
Stackhero bietet eine einsatzbereite Python-Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:
- Deployen Sie Ihre Anwendung in Sekundenschnelle mit einem einfachen
git push.- Verwenden Sie Ihren eigenen Domainnamen und profitieren Sie von der automatischen Konfiguration von HTTPS-Zertifikaten für erhöhte Sicherheit.
- Genießen Sie beruhigende automatische Backups, Ein-Klick-Updates und eine einfache, transparente und vorhersehbare Preisgestaltung.
- Erhalten Sie optimale Leistung und robuste Sicherheit dank einer privaten und dedizierten VM.
Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Python-Cloud-Hosting-Lösung von Stackhero auszuprobieren!
Der Stackhero Python Cloud Hosting Service bietet Ihnen eine unkomplizierte und zuverlässige Möglichkeit, Ihre Python-Projekte in nur wenigen Minuten produktiv bereitzustellen. Dank der intuitiven Einrichtung und leistungsstarken Funktionen können Sie sich ganz auf die Entwicklung Ihrer Anwendung konzentrieren, während Stackhero die Infrastruktur für Sie übernimmt.
Zu den wichtigsten Funktionen gehören:
- Deployment per einfachem
git push - Eigene Domains mit automatischer TLS-Zertifikatsverwaltung (HTTPS)
- Dedizierte, private VMs für erhöhte Sicherheit und Vertraulichkeit
- Unterstützung für HTTP/2, TLS 1.3 (HTTPS), WebSockets, GZIP- & Brotli-Kompression, ETag sowie Zugriff auf TCP/UDP-Ports
Voraussetzungen
Bevor Sie mit Stackhero starten, stellen Sie bitte sicher, dass Git auf Ihrem Computer installiert ist.
Wenn Ihre Entwicklungsumgebung noch nicht eingerichtet ist oder Sie Zeit bei der Konfiguration sparen möchten, probieren Sie doch Stackheros Code-Hero aus.
Code-Hero ist eine benutzerfreundliche, sofort einsatzbereite Entwicklungsplattform, die direkt im Browser auf jedem Computer, Tablet oder Smartphone läuft. Basierend auf einem VSCode-Fork ist Code-Hero mit allen wichtigen Entwicklungstools vorinstalliert, sodass Sie ohne zusätzliche Einrichtung direkt loslegen können.
Beispiel einer Code-Hero-Instanz, die direkt im Browser läuft
Schritte zur Bereitstellung auf Stackhero
Das Deployment Ihrer Python-Anwendung auf Stackhero ist bewusst einfach und nahtlos gestaltet. So gehen Sie vor:
- Erstellen Sie einen Python-Service auf Stackhero.
- Fügen Sie Ihren SSH Public Key zur Konfiguration Ihres Python-Services hinzu.
- Richten Sie den
git push-Befehl auf Ihrer Entwicklungsplattform ein. - Fügen Sie Ihrem Projekt ein Makefile hinzu.
- Stellen Sie Ihren Code in Produktion bereit.
Sollten während des Deployments Probleme auftreten, finden Sie wahrscheinlich Antworten in der Dokumentation "Troubleshooting". Ein Blick dorthin kann Ihnen unnötigen Frust ersparen.
Konfiguration Ihres "Stackhero for Python"-Services
Falls Sie noch keinen Stackhero for Python-Service gestartet haben, können Sie diesen über Ihr Stackhero-Dashboard anlegen. Das dauert in der Regel nur wenige Minuten.
Sobald Ihr Python-Service läuft, müssen Sie Ihren SSH Public Key in der Konfiguration hinterlegen. Zeigen Sie Ihren Public Key mit folgendem Befehl an:
cat ~/.ssh/id_*.pub
Sie haben noch keine SSH-Schlüssel?
Sie können diese mit folgendem Befehl generieren:
ssh-keygen -t ed25519
So fügen Sie Ihren Public Key zu Ihrem Python-Service hinzu:
- Öffnen Sie das Stackhero-Dashboard und wählen Sie Ihren Python-Service aus.
- Klicken Sie auf die Schaltfläche "Konfigurieren".
- Fügen Sie Ihren SSH Public Key im Bereich "SSH public keys" ein.
Beispiel einer Python-Service-Konfiguration
Tipp: Sie können Ihren SSH Public Key auch global hinterlegen, sodass er bei jeder neuen Service-Erstellung automatisch übernommen wird. Gehen Sie dazu in Ihr Profil im Stackhero-Dashboard, klicken Sie oben rechts auf Ihr Profilbild, wählen Sie "Ihr Profil" und fügen Sie dort Ihren SSH Public Key hinzu.
Konfiguration des git push-Befehls für das Deployment
Stackhero macht Deployments einfach, indem es auf das Git CLI und den vertrauten git push-Befehl setzt. Sie müssen keine zusätzliche Software installieren – richten Sie Ihr Git-Remote einmalig ein und schon kann es losgehen.
Ihren git remote command finden Sie auf der Hauptseite Ihres Services im Stackhero-Dashboard. Er sieht etwa so aus:
git remote add stackhero ssh://stackhero@<XXXXXX>.stackhero-network.com:222/project.git
Python Git-Remote-Befehl im Stackhero-Dashboard
Makefile für das Stackhero-Deployment erstellen
Um Stackhero mitzuteilen, wie Ihre Anwendung gestartet werden soll, verwenden Sie ein Makefile im Hauptverzeichnis Ihres Projekts.
Sie sind neu bei
Makefile-Dateien und demmake-Befehl? Kein Problem – folgen Sie einfach dieser Anleitung.
Erstellen Sie im Wurzelverzeichnis Ihres Projekts eine Datei namens Makefile mit folgendem Inhalt:
run:
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -
Einige wichtige Hinweise zu diesem Makefile:
- Die Regel
runist erforderlich, da Stackhero sie automatisch ausführt. Bitte benennen Sie sie nicht um. - Der Befehl
gunicorn app:app -b 0.0.0.0:8080 --error-logfile -ist ein Beispiel. Passen Sie ihn an die Anforderungen Ihrer Anwendung an. - Achten Sie darauf, dass der gunicorn-Befehl mit einem Tabulator beginnt. Erhalten Sie eine Fehlermeldung wie "*** missing separator", fehlt vermutlich der Tab.
In diesem Beispiel wird Gunicorn verwendet, um Ihre App bereitzustellen (stellen Sie sicher, dass Gunicorn in Ihrer requirements.txt aufgeführt ist). Das Argument -b 0.0.0.0:8080 bedeutet, dass auf allen Schnittstellen am Port 8080 gelauscht wird. Wenn Sie einen anderen Port wählen, passen Sie bitte auch die Konfiguration Ihres Python-Services im Stackhero-Dashboard entsprechend an. Der Teil app:app verweist auf das app-Objekt in Ihrer Datei app.py.
Ihre Python-Anwendung bereitstellen
Sobald alles eingerichtet ist, können Sie deployen. Wechseln Sie in Ihr Projektverzeichnis und führen Sie folgenden Befehl aus, um Ihren Code zu Stackhero zu pushen:
git push stackhero main
Beim ersten Ausführen dieses Befehls werden Sie aufgefordert, den SSH-Key-Fingerprint zu bestätigen. Antworten Sie einfach mit "yes", wenn Sie gefragt werden. Nach wenigen Sekunden ist Ihre Anwendung online.
Beispiel für das Deployment von Python-Code auf Stackhero mit dem Befehl git push
Um Ihre bereitgestellte Anwendung zu sehen, rufen Sie die "website"-URL in Ihrem Stackhero-Dashboard auf (diese sieht typischerweise so aus: https://<XXXXXX>.stackhero-network.com).
Das war's – Ihre Anwendung läuft jetzt produktiv.
Haben Sie Probleme beim Deployment?
Im Bereich Troubleshooting finden Sie zahlreiche Lösungen, um Probleme schnell zu beheben.
Fazit
Wir hoffen, dass Ihnen diese Anleitung den Weg zur produktiven Bereitstellung Ihres Python-Codes mit Stackhero klar und verständlich gemacht hat. Mit diesem Fundament können Sie Ihre Projekte zuverlässig live bringen.
Wenn Sie noch mehr Möglichkeiten nutzen möchten, finden Sie in der Dokumentation zu "Advanced Deployment Usages" Themen wie das Deployment aus verschiedenen Git-Branches, Tags oder Commits, das Management mehrerer Umgebungen (z.B. Staging und Produktion) sowie den Umgang mit Umgebungsvariablen.
Und denken Sie daran: Sollten Sie auf Probleme stoßen, steht Ihnen die Dokumentation "Troubleshooting" jederzeit zur Verfügung, damit Sie schnell wieder weiterarbeiten können.