Delen via


Overzicht van de Python-web-azd-sjablonen

Python-web azure Developer CLI-sjablonen (azd) zijn de snelste en eenvoudigste manier om Python-webtoepassingen te bouwen, configureren en implementeren in Azure. Dit artikel bevat contextuele achtergrondinformatie om inzicht te verkrijgen in de betrokken onderdelen en hoe de sjablonen de implementatie vereenvoudigen.

De beste manier om te beginnen is om de quickstart te volgen om uw eerste Python-web-app te maken en deze in enkele minuten in Azure te implementeren met azd sjablonen. Als u liever geen lokale ontwikkelomgeving instelt, kunt u de quickstart volgen door GitHub Codespaces te gebruiken voor een volledig cloudgebaseerde ervaring met alle vooraf geconfigureerde hulpprogramma's.

Wat zijn de Azd-sjablonen voor Python-web?

De azd sjablonen zijn ontworpen voor ervaren Python-webontwikkelaars die schaalbare, cloudklare toepassingen in Azure willen implementeren met minimale installatietijd.

Deze sjablonen bieden het eenvoudigste startpunt voor het bouwen en implementeren van Python-webtoepassingen door:

  • Snel een volledige lokale ontwikkel- en hostingomgeving instellen.
  • Het maken van een overeenkomende Azure-implementatieomgeving automatiseren.
  • Een eenvoudige en gedenkwaardige CLI-werkstroom gebruiken.

Zodra uw omgevingen zijn ingesteld, bieden de sjablonen de snelste manier om uw Python-web-app te bouwen. U kunt:

  • Wijzig de opgegeven codebestanden zodat deze overeenkomen met de vereisten van uw app.
  • Implementeer updates met minimale inspanning met behulp van azd-opdrachten.
  • Breid de sjabloon uit zodat deze past bij uw architectuur.

Deze sjablonen weerspiegelen bewezen ontwerppatronen en aanbevolen procedures, zodat u het volgende kunt doen:

  • Bouw met vertrouwen op een solide architectuurbasis.
  • Volg de richtlijnen die zijn ontwikkeld door experts in de branche met uitgebreide ervaring in Python en Azure.
  • Zorg voor onderhoud, schaalbaarheid en beveiliging vanaf het begin.

Welke taken kan ik met de sjablonen doen?

Wanneer u een Python-websjabloon azd uitvoert, voert u snel verschillende taken uit:

  • Een starterstoepassing maken. U bouwt een website voor een fictief bedrijf met de naam Relecloud. Dit startersproject omvat:

    • Goed georganiseerde, productieklare code
    • Aanbevolen procedures voor Python-webframeworks (zoals Flask, Django).
    • Juist gebruik van afhankelijkheden, configuratie en structuur.

    De sjabloon is ontworpen als uitgangspunt. U kunt de logica vrij aanpassen en Azure-resources uitbreiden of verwijderen om aan uw project te voldoen.

  • Azure-resources inrichten. Met Bicep, een moderne IaC-taal (Infrastructure-as-Code), richt de sjabloon alle benodigde Azure-resources in voor:

    • Uw web-app hosten (zoals App Service, Container Apps)
    • Verbinding maken met databases (zoals PostgreSQL, Cosmos DB)

    De Bicep-bestanden kunnen volledig worden bewerkt. U kunt Azure-services toevoegen of aanpassen naarmate uw app zich ontwikkelt. Net als bij de vorige taak kunt u de Bicep-sjablonen zo nodig wijzigen om meer Azure-services toe te voegen.

  • Implementeer een starter-app voor ingerichte Azure-resources. Zodra resources zijn ingericht, wordt uw toepassing automatisch geïmplementeerd in de Azure-omgeving. U kunt nu:

    • Zie je app binnen enkele minuten in de cloud draaien.
    • Test het gedrag.
    • Bepaal welke functionaliteit of configuratie u hierna wilt bijwerken.
  • (Optioneel) GitHub-opslagplaats en CI/CD-pijplijn instellen. U kunt eventueel een GitHub-opslagplaats initialiseren met een Pijplijn voor continue integratie/continue levering (CI/CD) van GitHub Actions naar:

    • Automatiseer implementaties voor codewijzigingen.
    • Samenwerken met teamleden.
    • Push updates naar Azure door samen te voegen met de hoofdbranch.

    Deze integratie helpt u om vanaf het begin devOps-best practices te gebruiken.

Waar heb ik toegang tot de sjablonen?

Er zijn veel azd sjablonen beschikbaar in de galerie Geweldige Azure Developer CLI-sjablonen. Deze sjablonen bieden kant-en-klare Python-web-app-projecten met functiepariteit in populaire combinaties van Azure-services en Python-webframeworks.

Elke sjabloon bevat:

  • Een voorbeeldtoepassing met schone, onderhoudbare code.
  • Vooraf geconfigureerde infrastructuur als code met Bicep.
  • Naadloze implementatiewerkstromen met behulp van de Azure Developer CLI.
  • Optionele CI/CD-integratie via GitHub Actions

De volgende tabellen bevatten de Python-websjabloon azd monikers die beschikbaar zijn voor gebruik met de azd init opdracht. De tabellen identificeren de technologieën die in elke sjabloon zijn geïmplementeerd en bieden een koppeling naar de bijbehorende GitHub-opslagplaats, waar u wijzigingen kunt bijdragen.

De volgende azd sjablonen zijn beschikbaar voor het Django-webframework.

Sjabloon gegevensbank Hostingplatform GitHub-opslagplaats
Azure-Django-Postgres-Flexible-ACA Azure Database voor PostgreSQL Flexibele Server Azure Container Apps https://github.com/Azure-Samples/azure-django-postgres-flexible-aca
azure-django-postgres-flexible-appservice Azure Database voor PostgreSQL Flexibele Server Azure App Service https://github.com/Azure-Samples/azure-django-postgres-flexible-appservice
azure-django-cosmos-postgres-aca Azure Cosmos DB voor Azure Database voor PostgreSQL Azure Container Apps - een dienst van Microsoft waarmee je containers kunt uitvoeren en beheren in de cloud. https://github.com/Azure-Samples/azure-django-cosmos-postgres-aca
azure-django-cosmos-postgres-appservice Azure Cosmos DB for Azure Database for PostgreSQL Azure App Service https://github.com/Azure-Samples/azure-django-cosmos-postgres-appservice
azure-django-postgres-addon-aca Azure Container Apps met Azure Database for PostgreSQL Azure Container Apps - een dienst van Microsoft waarmee je containers kunt uitvoeren en beheren in de cloud. https://github.com/Azure-Samples/azure-django-postgres-addon-aca

Hoe moet ik de sjablonen gebruiken?

Elke azd sjabloon bestaat uit een GitHub-opslagplaats die de toepassingscode bevat (Python-code die gebruikmaakt van een populair webframework) en de infrastructure-as-code-bestanden (namelijk Bicep) om de Azure-resources te maken. De sjabloon bevat ook de configuratie die is vereist voor het instellen van een GitHub-opslagplaats met een CI/CD-pijplijn.

Belangrijke onderdelen van elke sjabloon zijn:

  • Toepassingscode: geschreven in Python en gebouwd met behulp van een populair webframework (zoals Flask, Django, FastAPI). De voorbeeld-app demonstreert aanbevolen procedures voor routering, gegevenstoegang en configuratie.

  • Infrastructure-as-Code (IaC):wordt geleverd via Bicep-bestanden om de vereiste Azure-resources te definiëren en in te richten, zoals:

    • App Service en Container Apps
    • Azure Databases (zoals PostgreSQL, Cosmos DB)
    • Azure AI-services, Opslag en meer
  • CI/CD-configuratie (optioneel):bevat bestanden voor het instellen van een GitHub-opslagplaats met een CI/CD-pijplijn van GitHub Actions, waardoor:

    • Automatische implementatie naar Azure op elke push- of pull-aanvraag naar de hoofdbranch.
    • Naadloze integratie in uw DevOps-werkstroom

    Deze sjablonen zijn volledig aanpasbaar, waardoor u een sterke basis hebt om aan de specifieke behoeften van uw project voort te bouwen en aan te passen.

Als u de taken wilt uitvoeren die zijn gedefinieerd door een azd websjabloon, gebruikt u verschillende Python-opdrachten azd . Zie Quickstart: Een Azure Developer CLI-sjabloon implementeren voor gedetailleerde beschrijvingen van deze opdrachten. In de quickstart wordt u begeleid bij de stappen voor het gebruik van een specifieke azd sjabloon. U hoeft slechts vijf essentiële opdrachtregelinstructies uit te voeren voor de productiehostingomgeving en de lokale ontwikkelomgeving.

De volgende tabel bevat een overzicht van de vijf essentiële opdrachten:

Opdracht Taakbeschrijving
azd init --template <template name> Maak een nieuw project op basis van een sjabloon en maak een kopie van de toepassingscode op uw lokale computer. Met de opdracht wordt u gevraagd een omgevingsnaam op te geven (zoals 'myapp') die wordt gebruikt als voorvoegsel in de naamgeving van de geïmplementeerde resources.
azd auth login Meld u aan bij Azure. Met de opdracht wordt een browservenster geopend waarin u zich kunt aanmelden bij Azure. Nadat u zich hebt aangemeld, wordt het browservenster gesloten en wordt de opdracht voltooid. De azd auth login opdracht is alleen vereist wanneer u de Azure Developer CLI (azd) voor het eerst per sessie gebruikt.
azd up Richt de cloudresources in en implementeer de app in deze resources.
azd deploy Implementeer wijzigingen in de broncode van de toepassing voor resources die al door de azd up opdracht zijn ingericht.
azd down Verwijder de Azure-resources en de CI/CD-pijplijn als deze is gebruikt.

Aanbeveling

Wanneer u met de azd opdrachten werkt, bekijkt u de aanwijzingen om meer informatie in te voeren. Nadat u de azd up opdracht hebt uitgevoerd, wordt u mogelijk gevraagd om een abonnement te selecteren als u meer dan één abonnement hebt. U wordt mogelijk ook gevraagd uw regio op te geven. U kunt de antwoorden op vragen wijzigen door de omgevingsvariabelen te bewerken die zijn opgeslagen in de map /.azure/ van de sjabloon.

Nadat u de essentiële taken van de azd sjabloon hebt voltooid, hebt u een persoonlijke kopie van de oorspronkelijke sjabloon, waar u elk bestand kunt wijzigen, indien nodig.

  • Toepassingscode: Pas de Python-projectcode aan om uw eigen ontwerp, routes en bedrijfslogica te implementeren.
  • Infrastructure-as-Code (Bicep): werk de Bicep-bestanden bij om extra Azure-services in te richten, configuraties te wijzigen of overbodige resources te verwijderen.

Met dit flexibele uitgangspunt kunt u bouwen op een goed gestructureerde basis terwijl u de app aan uw praktijkgebruik kunt aanpassen.

U kunt ook de configuratie van infrastructuur als code wijzigen als u de Azure-resources wilt wijzigen. Zie de sectie Wat kan ik later in dit artikel bewerken of verwijderen voor meer informatie.

Optionele sjabloontaken

Naast de vijf essentiële opdrachten zijn er optionele taken die u met de azd sjablonen kunt uitvoeren.

Azure-resources opnieuw inrichten en wijzigen

Nadat u Azure-resources met een azd sjabloon hebt ingericht, kunt u een resource wijzigen en opnieuw inrichten.

CI/CD-pijplijn instellen

De Azure Developer CLI (azd) biedt een eenvoudige manier om een CI/CD-pijplijn in te stellen voor uw nieuwe Python-web-app. Wanneer u commits of pull requests samenvoegt in de hoofdbranch, bouwt en publiceert de pijplijn automatisch de wijzigingen in uw Azure-resources.

  • Als u de CI/CD-pijplijn wilt instellen, wijst u de GitHub-opslagplaats en de gewenste instellingen aan om de pijplijn in te schakelen.
  • Gebruik de azd pipeline config opdracht om de pijplijn te maken.

Nadat u de pijplijn hebt geconfigureerd, worden telkens wanneer codewijzigingen worden samengevoegd met de hoofdbranch van de opslagplaats, de wijzigingen in uw ingerichte Azure-services geïmplementeerd.

Alternatieven voor de sjablonen

Als u liever geen Python-websjablonen azd gebruikt, zijn er alternatieve methoden voor het implementeren van Python-web-apps in Azure en het inrichten van Azure-resources.

U kunt veel resources maken en de implementatiestappen voltooien met behulp van verschillende hulpprogramma's:

U kunt ook een end-to-end zelfstudie volgen met Python-frameworks voor webontwikkeling:

Veelgestelde vragen

In de volgende secties vindt u antwoorden op veelgestelde vragen over het werken met de Python-websjablonen azd .

Moet ik Dev Containers gebruiken?

Nee. De Python-websjablonen azd maken standaard gebruik van Visual Studio Code Dev Containers . Dev Containers biedt veel voordelen, maar hiervoor is enige vereiste kennis en software vereist. Als u liever geen Dev Containers gebruikt en in plaats daarvan uw lokale ontwikkelomgeving gebruikt, raadpleegt u het bestand README.md in de hoofdmap van de voorbeeld-app voor instructies voor het instellen van de omgeving.

Wat kan ik bewerken of verwijderen?

De inhoud van elke Python-websjabloon azd kan variëren, afhankelijk van het type project en de onderliggende technologiestack die wordt gebruikt. De sjablonen die in dit artikel worden geïdentificeerd, volgen een algemene map- en bestandsconventie, zoals beschreven in de volgende tabel.

Map/bestand(en) Doel Beschrijving
/ Hoofdmap De hoofdmap voor elke sjabloon bevat veel verschillende soorten bestanden en mappen voor verschillende doeleinden.
/.azuur azd configuratiebestanden De map .azure wordt gemaakt nadat u het azd init commando hebt uitgevoerd. De map slaat configuratiebestanden op voor de omgevingsvariabelen die worden gebruikt door de azd opdrachten. U kunt de waarden van de omgevingsvariabelen wijzigen om de app en de Azure-resources aan te passen. Zie omgevingsspecifiek .env-bestand voor meer informatie.
/.devcontainer Dev Container-configuratiebestanden Met Dev Containers kunt u een op containers gebaseerde ontwikkelomgeving maken, compleet met alle resources die u nodig hebt voor softwareontwikkeling in Visual Studio Code. De map .devcontainer wordt gemaakt nadat Visual Studio Code een Dev Container-configuratiebestand genereert als reactie op een sjabloonopdracht.
/.github GitHub Actions-configuratiebestanden Deze map bevat configuratie-instellingen voor de optionele GitHub Actions CI/CD-pijplijn, linting en tests. Als u de GitHub Actions-pijplijn niet wilt instellen met behulp van azd pipeline config de opdracht, kunt u het bestand azure-dev.yaml wijzigen of verwijderen.
/infra Bicep-bestanden De inframap bevat de Bicep-configuratiebestanden. Met Bicep kunt u de Azure-resources declareren die u in uw omgeving wilt implementeren. U moet alleen de bestanden main.bicep en web.bicep wijzigen. Zie quickstart: Services schalen die zijn geïmplementeerd met de azd Python-websjablonen met behulp van Bicep voor meer informatie.
/Src Startersprojectcodebestanden De src-map bevat verschillende codebestanden die nodig zijn om het starterproject op te zetten. Voorbeelden van de bestanden zijn sjablonen die vereist zijn voor het webframework, statische bestanden, Python-bestanden (.py) voor de codelogica en gegevensmodellen, een requirements.txt-bestand en meer. De specifieke bestanden zijn afhankelijk van het webframework, het framework voor gegevenstoegang, enzovoort. U kunt deze bestanden aanpassen aan uw projectvereisten.
/.cruft.json Bestand voor het genereren van sjablonen Het CRUFT JSON-bestand wordt intern gebruikt om de Python-websjablonen azd te genereren. U kunt dit bestand veilig verwijderen, indien nodig.
/.gitattributes Bestand met kenmerkinstellingen voor Git Dit bestand biedt git belangrijke configuratie-instellingen voor het verwerken van bestanden en mappen. U kunt dit bestand indien nodig wijzigen.
/.gitignore Bestand met genegeerde items voor Git Het .gitignore-bestand informeert git over de bestanden en mappen die moeten worden uitgesloten (negeren) bij het schrijven naar de GitHub-opslagplaats voor de sjabloon. U kunt dit bestand indien nodig wijzigen.
/azure.yaml azd up configuratiebestand Dit configuratiebestand bevat de configuratie-instellingen voor de azd up opdracht. Hiermee geeft u de services en projectmappen op die moeten worden geïmplementeerd. Belangrijk: dit bestand mag niet worden verwijderd.
/*.Md Markdown-indelingsbestanden Een sjabloon kan verschillende Markdown-indelingsbestanden (.md) bevatten voor verschillende doeleinden. U kunt Markdown-bestanden veilig verwijderen.
/docker-compose.yml Instellingen voor Docker Compose Met dit YML-bestand wordt het containerpakket voor de Python-webtoepassing gemaakt voordat de app in Azure wordt geïmplementeerd.
/pyproject.toml Bestand met build-instellingen voor Python Het TOML-bestand bevat de buildsysteemvereisten van Python-projecten. U kunt dit bestand wijzigen om uw voorkeuren voor hulpprogramma's te identificeren, zoals een specifiek linter- of eenheidstestframework.
/requirements-dev.in PIP-vereistenbestand Dit bestand wordt gebruikt om een ontwikkelomgevingsversie van de vereisten te maken met behulp van de pip install -r opdracht. U kunt dit bestand zo nodig wijzigen om andere pakketten op te nemen.

Aanbeveling

Wanneer u sjabloonbestanden voor uw programma wijzigt, moet u goed versiebeheer gebruiken. Met deze methode kunt u uw opslagplaats herstellen naar een eerdere werkende versie, als nieuwe wijzigingen problemen met het programma veroorzaken.

Hoe kan ik sjabloonfouten afhandelen?

Als u een foutmelding ontvangt wanneer u een azd sjabloon gebruikt, raadpleegt u de opties die worden beschreven in het artikel Problemen met Azure Developer CLI oplossen . U kunt ook problemen melden in de GitHub-opslagplaats die is gekoppeld aan de azd sjabloon.