Übersicht über die Python-Web azd-Vorlagen
Die Python-Web-CLI-Vorlagen (azd
Python Web Developer CLI) sind die schnellste und einfachste Möglichkeit, mit dem Erstellen und Bereitstellen von Python-Webanwendungen in Azure zu beginnen. Dieser Artikel enthält kontextbezogene Hintergrundinformationen während der ersten Schritte.
Die beste Möglichkeit für die ersten Schritte besteht darin, die Schnellstartanleitung zu befolgen, um Ihre erste Python-Webanwendung zu erstellen und in Wenigen Minuten mit azd
Vorlagen in Azure bereitzustellen. Wenn Sie keine lokale Entwicklungsumgebung einrichten möchten, können Sie stattdessen die Schnellstartanleitung mithilfe von GitHub Codespaces befolgen.
Was sind die Python-Web-Azd-Vorlagen?
Im Katalog "Fantastische AZD-Vorlagen" stehen viele azd
Vorlagen zur Verfügung. Diese Sammlung von Python-Webvorlagen azd
ist jedoch einzigartig, da sie eine Beispielwebanwendung mit Featureparität für viele verschiedene beliebte Kombinationen von Azure-Ressourcen und Python-Webframeworks bereitstellen.
Wenn Sie eine Python-Webvorlage azd
ausführen, werden Sie folgende Aktionen ausführen:
- Erstellen Sie eine Startanwendung – insbesondere eine Website für ein fiktives Unternehmen namens Relecloud. Der Projektcode bietet viele bewährte Methoden für die angegebenen Python-Frameworks und -Pakete, die für diesen bestimmten Technologiestapel erforderlich sind. Die Vorlage soll ein Ausgangspunkt für Ihre Anwendung sein. Sie fügen Anwendungslogik und Azure-Ressourcen nach Bedarf hinzu oder entfernen sie.
- Bereitstellen von Azure-Ressourcen – Die Vorlage stellt Azure-Ressourcen zum Hosten Ihrer Web-App und -Datenbank mithilfe von Bicep bereit, einem beliebten Infrastruktur-as-Code-Tool. Auch hier ändern Sie die Bicep-Vorlagen , wenn Sie weitere Azure-Dienste hinzufügen müssen.
- Stellen Sie die Startanwendung für die neu bereitgestellten Azure-Ressourcen bereit – Die Startanwendung wird automatisch bereitgestellt, sodass Sie sehen können, dass sie alle in Minuten funktioniert und entscheiden, was Sie ändern möchten.
- Optional: Richten Sie ein GitHub-Repository und eine CI/CD-Pipeline ein – Wenn Sie möchten, enthält die Vorlage die Logik zum Einrichten eines GitHub-Repositorys für Sie, einschließlich einer GitHub Actions CI/CD-Pipeline. Innerhalb von Minuten können Sie Änderungen am Webprojektcode vornehmen. Wenn Sie diese Änderungen an der Standard Verzweigung Ihres GitHub-Repositorys zusammenführen, veröffentlicht die CI/CD-Pipeline sie in Ihrer neuen Azure-Hostingumgebung.
Zielgruppe
Die Vorlagen sollen von erfahrenen Python-Webentwicklern verwendet werden, die mit der Erstellung einer neuen Python-Webanwendung für die Azure-Bereitstellung beginnen möchten.
Warum möchte ich dies verwenden?
Die Verwendung der azd
Vorlagen bietet mehrere Vorteile:
- Schnellstmöglicher Start – Mit Ihrer lokalen Entwicklungsumgebung und Hostingumgebungseinrichtung können Sie sich innerhalb weniger Minuten darauf konzentrieren, Ihre Anwendung zu erstellen.
- Einfachster Start : Führen Sie nur ein paar Befehlszeilenanweisungen aus, um eine gesamte lokale Entwicklungs-, Hosting- und Bereitstellungsumgebung zu erstellen. Der Workflow ist einfach zu bedienen und leicht zu merken.
- Bauen Sie auf bewährten Methoden auf – Jede Vorlage wird von Python auf Azure-Branchenveteranen erstellt und Standard. Fügen Sie Ihren Code nach ihren Entwurfsansätzen hinzu, um auf einer soliden Grundlage aufzubauen.
Index der Vorlagen
In der folgenden Tabelle sind die verfügbaren Python-Webvorlagenmoniker azd
aufgeführt, die mit dem azd init
Befehl, den in jeder Vorlage implementierten Technologien und einem Link zum GitHub-Repository verwendet werden, wenn Sie Änderungen beitragen möchten.
Vorlage | WebFramework | Datenbank | Hostingplattform | GitHub-Repository |
---|---|---|---|---|
azure-django-postgres-flexible-aca | Django | PostgreSQL Flexible Server | Azure Container Apps | Aktualisieren |
azure-django-postgres-flexible-appservice | Django | PostgreSQL Flexible Server | Azure App Service | Aktualisieren |
azure-django-cosmos-postgres-aca | Django | Cosmos DB (PostgreSQL Adapter) | Azure Container Apps | Aktualisieren |
azure-django-cosmos-postgres-appservice | Django | Cosmos DB (PostgreSQL Adapter) | Azure App Service | Aktualisieren |
azure-django-postgres-addon-aca | Django | Azure Container Apps PostgreSQL-Add-On | Azure Container Apps | Aktualisieren |
Wie funktionieren die Vorlagen?
Sie verwenden verschiedene azd
Befehle, um aufgaben auszuführen, die von einer azd
Vorlage definiert wurden. Diese Befehle werden ausführlich in den ersten Schritten mit der Azure Developer CLI behandelt.
Die azd
Vorlage besteht aus einem GitHub-Repository, das den Anwendungscode (Python-Code unter Verwendung eines beliebten Webframeworks) und die Infrastruktur-as-Code-Dateien (nämlich Bicep) enthält, um die Azure-Ressourcen zu erstellen. Es enthält auch die Konfiguration, die zum Einrichten eines GitHub-Repositorys mit einer CI/CD-Pipeline erforderlich ist.
Die Schnellstartanleitung führt Sie durch die Schritte zur Verwendung einer bestimmten azd
Vorlage. Sie müssen nur fünf Befehlszeilenanweisungen für die Produktionshostingumgebung und die lokale Entwicklungsumgebung ausführen:
azd init --template <template name>
– erstellt ein neues Projekt aus einer Vorlage und erstellt eine Kopie des Anwendungscodes auf Dem lokalen Computer. Mit den Befehlen können Sie einen Umgebungsnamen (z. B. "myapp") angeben, der als Präfix in der Benennung der bereitgestellten Ressourcen verwendet wird.The command prompts you to provide an environment name (like "myapp"), that is used as a prefix int the naming of the deployed resources.azd auth login
– meldet Sie bei Azure an. Der Befehl öffnet ein Browserfenster, in dem Sie sich bei Azure anmelden können. Nach der Anmeldung wird das Browserfenster geschlossen, und der Befehl wird abgeschlossen. Derazd auth login
Befehl ist nur erforderlich, wenn Sie die Azure Developer CLI (azd
) zum ersten Mal pro Sitzung verwenden.azd up
– stellt die Cloudressourcen bereit und stellt die App für diese Ressourcen bereit.azd deploy
– stellt Änderungen am Anwendungsquellcode für Ressourcen bereit, die bereits bereitgestellt wurdenazd up
.azd down
– löscht die Azure-Ressourcen und die CI/CD-Pipeline, wenn sie verwendet wurde.
Tipp
Sehen Sie sich die Ausgabe an, um azd
Eingabeaufforderungen zu erhalten, die Sie beantworten müssen. Nach dem Ausführen des azd up
Befehls werden Sie beispielsweise aufgefordert, ein Abonnement auszuwählen, wenn Sie zu mehreren gehören. Darüber hinaus werden Sie aufgefordert, eine Region auszuwählen. Sie können die Antworten auf Eingabeaufforderungen ändern, indem Sie die Umgebungsvariablen bearbeiten, die im Ordner "/.azure/ " der Vorlage gespeichert sind.
Nachdem die Vorlage abgeschlossen ist, verfügen Sie über eine persönliche Kopie der ursprünglichen Vorlage, in der Sie jede Datei nach Bedarf ändern können. Sie können den Python-Projektcode mindestens so ändern, dass das Projekt über Ihre Entwurfs- und Anwendungslogik verfügt. Sie können auch die Infrastruktur-as-Code-Konfiguration ändern, wenn Sie die Azure-Ressourcen ändern müssen. Lesen Sie den Abschnitt mit dem Titel "Was kann ich bearbeiten oder löschen?
Optional: Ändern und Erneutes Bereitstellen von Azure-Ressourcen
Wenn Sie die bereitgestellten Azure-Ressourcen ändern möchten, können Sie die entsprechenden Bicep-Dateien in der Vorlage bearbeiten und folgendes verwenden:
azd provision
– stellt Azure-Ressourcen gemäß der Definition in den Bicep-Dateien in den gewünschten Zustand um.
Einrichten einer CI/CD-Pipeline
Die Azure Developer CLI (azd
) bietet eine einfache Möglichkeit zum Einrichten einer CI/CD-Pipeline für Ihre neue Python-Webanwendung. Jedes Mal, wenn Sie Commits zusammenführen oder Anforderungen in Ihre Standard Verzweigung übertragen, erstellt und veröffentlicht die CI/CD-Pipeline automatisch Ihre Änderungen an Ihren Azure-Ressourcen.
Optional: Automatisches Einrichten der GitHub Actions CI/CD-Pipeline
Wenn Sie die GitHub Actions CI/CD-Pipelinefunktion implementieren möchten, verwenden Sie den folgenden Befehl:
azd pipeline config
– Ermöglicht es Ihnen, ein GitHub-Repository und einstellungen festzulegen, um die CI\CD-Pipeline zu aktivieren. Nach der Konfiguration werden die Änderungen bei jeder Codeänderung mit dem Standard Zweig des Repositorys zusammengeführt, und die Pipeline stellt die Änderungen an Ihren bereitgestellten Azure-Diensten bereit.
Was sind meine anderen Optionen?
Wenn Sie keine Vorlagen verwenden azd
möchten, können Sie Ihre Python-App in Azure bereitstellen und Azure-Ressourcen auf vielfältige Weise erstellen.
Sie können viele der Schritte zum Erstellen und Bereitstellen von Ressourcen mithilfe eines der folgenden Tools ausführen:
- Azure portal
- Azure-Befehlszeilenschnittstelle
- Visual Studio Code mit der Azure Tools-Erweiterung
Oder wenn Sie nach einem End-to-End-Lernprogramm suchen, das Python-Webentwicklungsframeworks enthält, sehen Sie sich Folgendes an:
- Bereitstellen einer Flask- oder FastAPI-Web-App in Azure App Service
- Containerisierte Python-Web-App in Azure mit MongoDB
Muss ich Dev-Container verwenden?
Nein Die Python-Webvorlagen azd
verwenden standardmäßig Dev Containers . Dev Containers bieten viele Vorteile, erfordern jedoch erforderliche Kenntnisse und Software. Wenn Sie dev Containers nicht verwenden möchten und stattdessen Ihre lokale Entwicklungsumgebung verwenden möchten, lesen Sie die README.md Datei im Stammverzeichnis der Beispiel-App für Anweisungen zum Einrichten der Umgebung.
Was kann ich bearbeiten oder löschen?
Der Inhalt jeder azd
Vorlage kann je nach Art des Projekts und dem zugrunde liegenden Technologiestapel variieren. Die in diesem Artikel aufgeführten Vorlagen folgen einer allgemeinen Konvention:
Ordner/Dateien | Zweck | Beschreibung |
---|---|---|
/ | Stammverzeichnis | Das Stammverzeichnis enthält viele verschiedene Arten von Dateien und Ordnern für viele verschiedene Zwecke. |
/.Azure | azd -Konfigurationsdateien |
Enthält die Umgebungsvariablen, die von den Azure Developer CLI (azd )-Befehlen verwendet werden. Dieser Ordner wird erstellt, nachdem Sie den azd init Befehl ausgeführt haben. Sie können die Werte der Umgebungsvariablen ändern, um die App und die Azure-Ressourcen anzupassen. Weitere Informationen finden Sie in der umgebungsspezifischen env-Datei. |
/.devcontainer | Dev Container-Konfigurationsdateien | Mit Dev Containers können Sie eine containerbasierte Entwicklungsumgebung erstellen, die vollständig mit allen Ressourcen ist, die Sie für die Softwareentwicklung innerhalb von Visual Studio Code benötigen. |
.github/ | Konfiguration von GitHub-Aktionen | Enthält die Konfigurationseinstellungen für die optionale GitHub Actions CI/CD-Pipeline sowie Linting und Tests. Die Datei "azure-dev.yaml " kann geändert oder gelöscht werden, wenn Sie die GitHub Actions-Pipeline nicht mithilfe azd pipeline config des Befehls einrichten möchten. |
/Infra | Bicep-Dateien | Mit Bicep können Sie die Azure-Ressourcen deklarieren, die Sie in Ihrer Umgebung bereitstellen möchten. Sie sollten nur die Dateien Standard.bicep und web.bicep ändern. Siehe Schnellstart: Skalierungsdienste, die mit den azd Python-Webvorlagen mit Bicep bereitgestellt wurden. |
src/ | Startprojektcodedateien | Enthält alle Vorlagen, die vom Webframework, statische Dateien, PY-Dateien für die Codelogik und Datenmodelle, a requirements.txt usw. benötigt werden. Die spezifischen Dateien hängen vom Webframework, dem Datenzugriffsframework usw. ab. Sie können diese Dateien an Ihre Projektanforderungen anpassen. |
/.cruft.json | Vorlagengenerierungsdatei | Wird intern verwendet, um die azd Vorlagen zu generieren. Sie können diese Datei sicher löschen. |
/.gitattributes | Git-Attribute | Stellt Git mit einer wichtigen Konfiguration zum Behandeln von Dateien und Ordnern bereit. Sie können diese Datei nach Bedarf ändern. |
/.gitignore | git ignore | Weist Git an, Dateien und Ordner von der Aufnahme in das Repository zu ignorieren. Sie können diese Datei nach Bedarf ändern. |
/azure.yaml | azd Konfigurationsdatei |
Enthält die Konfigurationseinstellungen zum azd up Deklarieren der Dienste und Projektordner, die bereitgestellt werden sollen. Diese Datei DARF NICHT gelöscht werden. |
/*.Md | Markdowndateien | Es gibt mehrere Markdowndateien für verschiedene Zwecke. Sie können diese Dateien sicher löschen. |
/docker-compose.yml | Docker Compose | Erstellt das Containerpaket für die Anwendung, bevor es in Azure bereitgestellt wird. |
/pyproject.toml | Python-Buildsystem | Enthält die Buildsystemanforderungen von Python-Projekten. Sie können diese Datei ändern, um Ihre bevorzugten Tools einzuschließen (z. B. um ein Linter- und Komponententestframework zu verwenden). |
/requirements-dev.in | Pip-Anforderungsdatei | Wird verwendet, um eine Entwicklungsumgebungsversion der Anforderungen mithilfe pip install -r des Befehls zu erstellen. Sie können diese Datei ändern, um andere Pakete nach Bedarf einzuschließen. |
Tipp
Verwenden Sie bewährte Methoden für die Versionsverwaltung, damit Sie zu einem Zeitpunkt zurückkehren können, zu dem das Projekt funktionierte, falls Sie etwas unerklärlich unterbrechen.
Häufig gestellte Fragen
F: Ich habe beim Verwenden einer azd
Vorlage einen Fehler erhalten. Was kann ich tun?
A: Siehe Problembehandlung bei der Azure Developer CLI. Sie können auch Probleme im GitHub-Repository der jeweiligen azd
Vorlage melden.