Overzicht van de Python Web azd-sjablonen
De Python-web azure Developer CLI-sjablonen (azd
) zijn de snelste en eenvoudigste manier om aan de slag te gaan met het bouwen en implementeren van Python-webtoepassingen in Azure. Dit artikel bevat contextuele achtergrondinformatie terwijl u aan de slag gaat.
De beste manier om aan de slag te gaan, is door de quickstart te volgen om uw eerste Python-webtoepassing te maken en deze in minuten te implementeren in Azure met azd
sjablonen. Als u geen lokale ontwikkelomgeving wilt instellen, kunt u de quickstart nog steeds volgen met behulp van GitHub Codespaces .
Wat zijn de Azd-sjablonen voor Python-web?
Er zijn veel azd
sjablonen beschikbaar in de galerie Geweldige AZD-sjablonen. Deze verzameling Python-websjablonen azd
is echter uniek, omdat ze een voorbeeldwebtoepassing bieden met functiepariteit voor veel verschillende populaire combinaties van Azure-resources en Python-webframeworks.
Wanneer u een Python-websjabloon azd
uitvoert, gaat u het volgende doen:
- Maak een starterstoepassing , met name een website voor een fictief bedrijf met de naam Relecloud. De projectcode bevat veel aanbevolen procedures voor de opgegeven Python-frameworks en -pakketten die vereist zijn voor die specifieke stack van technologieën. De sjabloon is bedoeld als uitgangspunt voor uw toepassing. U kunt indien nodig toepassingslogica en Azure-resources toevoegen of verwijderen.
- Azure-resources inrichten: met de sjabloon worden Azure-resources ingericht voor het hosten van uw web-app en database met bicep, een populair hulpprogramma voor infrastructuur als code. Nogmaals, u wijzigt de Bicep-sjablonen als u meer Azure-services wilt toevoegen.
- Implementeer de starterstoepassing in de nieuw ingerichte Azure-resources . De starterstoepassing wordt automatisch geïmplementeerd, zodat u deze binnen enkele minuten kunt zien werken en kunt bepalen wat u wilt wijzigen.
- Optioneel: Stel een GitHub-opslagplaats en een CI/CD-pijplijn in. Als u wilt, bevat de sjabloon de logica voor het instellen van een GitHub-opslagplaats voor u, inclusief een GitHub Actions CI/CD-pijplijn. Binnen enkele minuten kunt u wijzigingen aanbrengen in de webprojectcode. Wanneer u deze wijzigingen samenvoegt in de hoofdvertakking van uw GitHub-opslagplaats, publiceert de CI/CD-pijplijn deze naar uw nieuwe Azure-hostingomgeving.
Wie is dit voor?
De sjablonen zijn bedoeld om te worden gebruikt door ervaren Python-webontwikkelaars die willen beginnen met het bouwen van een nieuwe Python-webtoepassing die gericht is op Azure-implementatie.
Waarom zou ik dit willen gebruiken?
Het gebruik van de azd
sjablonen biedt verschillende voordelen:
- Snelst mogelijke start : met de installatie van uw lokale ontwikkelomgeving en hostingomgeving kunt u zich binnen enkele minuten richten op het bouwen van uw toepassing.
- Eenvoudigste start : voer slechts enkele opdrachtregelinstructies uit om een volledige lokale ontwikkel-, hosting- en implementatieomgeving uit te bouwen. De werkstroom is eenvoudig te gebruiken en gemakkelijk te onthouden.
- Bouw voort op best practices : elke sjabloon wordt gebouwd en onderhouden door Python op Azure-industrie veteranen. Voeg uw code toe aan de hand van hun ontwerpmethoden om te bouwen op een solide basis.
Index van sjablonen
De volgende tabel bevat de beschikbare Python-websjabloon azd
monikers voor gebruik met de azd init
opdracht, de technologieën die in elke sjabloon zijn geïmplementeerd en een koppeling naar de GitHub-opslagplaats als u wijzigingen wilt bijdragen.
Template | Web Framework | Database | Hostingplatform | GitHub-opslagplaats |
---|---|---|---|---|
azure-django-postgres-flexible-aca | Django | PostgreSQL Flexibele server | Azure Container Apps | opslagplaats |
azure-django-postgres-flexible-appservice | Django | PostgreSQL Flexibele server | Azure App Service | opslagplaats |
azure-django-cosmos-postgres-aca | Django | Cosmos DB (PostgreSQL-adapter) | Azure Container Apps | opslagplaats |
azure-django-cosmos-postgres-appservice | Django | Cosmos DB (PostgreSQL-adapter) | Azure App Service | opslagplaats |
azure-django-postgres-addon-aca | Django | Azure Container Apps PostgreSQL-invoegtoepassing | Azure Container Apps | opslagplaats |
Hoe werken de sjablonen?
U gebruikt verschillende azd
opdrachten om taken uit te voeren die zijn gedefinieerd door een azd
sjabloon. Deze opdrachten worden uitgebreid besproken in Aan de slag met Azure Developer CLI.
De azd
sjabloon bestaat uit een GitHub-opslagplaats met de toepassingscode (Python-code die gebruikmaakt van een populair webframework) en de infrastructure-as-code-bestanden (namelijk Bicep) om de Azure-resources te maken. Het bevat ook de configuratie die is vereist voor het instellen van een GitHub-opslagplaats met een CI/CD-pijplijn.
In de quickstart wordt u begeleid bij de stappen voor het gebruik van een specifieke azd
sjabloon. Hiervoor hoeft u slechts vijf opdrachtregelinstructies uit te voeren voor de productiehostingomgeving en de lokale ontwikkelomgeving:
azd init --template <template name>
- maakt een nieuw project op basis van een sjabloon en maakt 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
- meldt u zich 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. Deazd 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 implementeert de app in deze resources.azd deploy
- implementeert wijzigingen in de broncode van de toepassing op resources die al zijn ingericht doorazd up
.azd down
- verwijdert de Azure-resources en de CI/CD-pijplijn als deze is gebruikt.
Tip
Bekijk de uitvoer voor azd
prompts die u moet beantwoorden. Nadat u de azd up
opdracht hebt uitgevoerd, wordt u bijvoorbeeld mogelijk gevraagd om een abonnement te selecteren als u deel uitmaakt van meer dan één abonnement. Bovendien wordt u gevraagd om een regio te selecteren. U kunt de antwoorden op vragen wijzigen door de omgevingsvariabelen te bewerken die zijn opgeslagen in de map /.azure/ van de sjabloon.
Zodra de sjabloon is voltooid, hebt u een persoonlijke kopie van de oorspronkelijke sjabloon, waar u elk bestand indien nodig kunt wijzigen. U kunt minimaal de Python-projectcode wijzigen, zodat het project uw ontwerp- en toepassingslogica heeft. U kunt ook de configuratie van infrastructuur als code wijzigen als u de Azure-resources wilt wijzigen. Zie de sectie getiteld Wat kan ik bewerken of verwijderen?
Optioneel: Azure-resources wijzigen en opnieuw inrichten
Als u de ingerichte Azure-resources wilt wijzigen, kunt u de juiste Bicep-bestanden in de sjabloon bewerken en gebruiken:
azd provision
- Herinrichting van Azure-resources naar de gewenste status, zoals gedefinieerd in de Bicep-bestanden.
Een 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-webtoepassing. Telkens wanneer u doorvoeringen of pull-aanvragen samenvoegt in uw hoofdbranch, bouwt en publiceert de CI/CD-pijplijn automatisch uw wijzigingen in uw Azure-resources.
Optioneel: De GitHub Actions CI/CD-pijplijn automatisch instellen
Als u de CI/CD-pijplijnfunctionaliteit van GitHub Actions wilt implementeren, gebruikt u de volgende opdracht:
azd pipeline config
- Hiermee kunt u een GitHub-opslagplaats en -instellingen aanwijzen om de CI\CD-pijplijn in te schakelen. Zodra de code is geconfigureerd, worden telkens wanneer codewijzigingen worden samengevoegd met de hoofdbranch van de opslagplaats, de pijplijn de wijzigingen in uw ingerichte Azure-services geïmplementeerd.
Wat zijn mijn andere opties?
Als u geen sjablonen wilt gebruiken azd
, kunt u uw Python-app op veel manieren implementeren in Azure en Azure-resources maken.
U kunt veel stappen voor het maken en implementeren van resources uitvoeren met behulp van een van de volgende hulpprogramma's:
- Azure-portal
- Azure-CLI
- Visual Studio Code met de Azure Tools-extensie
Of als u op zoek bent naar een end-to-end zelfstudie met Python-frameworks voor webontwikkeling, bekijkt u:
- Een Flask- of FastAPI-web-app implementeren in Azure-app Service
- In containers geplaatste Python-web-app in Azure met MongoDB
Moet ik Dev Containers gebruiken?
Nee De Python-websjablonen azd
maken standaard gebruik van Dev Containers . Dev Containers bieden veel voordelen, maar vereisen enige vereiste kennis en software. Als u Dev Containers niet wilt gebruiken en in plaats daarvan uw lokale ontwikkelomgeving wilt gebruiken, raadpleegt u het bestand README.md in de hoofdmap van de voorbeeld-app voor installatie-instructies voor de omgeving.
Wat kan ik bewerken of verwijderen?
De inhoud van elke azd
sjabloon kan variëren, afhankelijk van het type project en de onderliggende technologiestack die wordt gebruikt. De sjablonen in dit artikel volgen een algemene conventie:
Map/bestanden | Doel | Beschrijving |
---|---|---|
/ | Hoofdmap | De hoofdmap bevat veel verschillende soorten bestanden en mappen voor veel verschillende doeleinden. |
/.Azure | azd configuratiebestanden |
Bevat de omgevingsvariabelen die worden gebruikt door de Azure Developer CLI-opdrachten (azd ). Deze map wordt gemaakt nadat u de azd init opdracht hebt uitgevoerd. 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. |
/.github | Configuratie van GitHub Actions | Bevat de configuratie-instellingen voor de optionele GitHub Actions CI/CD-pijplijn, evenals linting en tests. Het bestand azure-dev.yaml kan worden gewijzigd of verwijderd als u de GitHub Actions-pijplijn niet wilt instellen met behulp van azd pipeline config de opdracht. |
/Infra | Bicep-bestanden | 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 bicep. |
/Src | starter projectcodebestanden | Bevat alle sjablonen die vereist zijn voor het webframework, statische bestanden, .py-bestanden voor de codelogica en gegevensmodellen, een requirements.txt enzovoort. 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 | Intern gebruikt om de azd sjablonen te genereren. U kunt dit bestand veilig verwijderen. |
/.gitattributes | Git-kenmerken | Biedt git een belangrijke configuratie over het verwerken van bestanden en mappen. U kunt dit bestand indien nodig wijzigen. |
/.gitignore | git ignore | Hiermee wordt door Git aangegeven dat bestanden en mappen niet in de opslagplaats worden opgenomen. U kunt dit bestand indien nodig wijzigen. |
/azure.yaml | azd configuratiebestand |
Bevat de configuratie-instellingen voor azd up het declareren van welke services en projectmappen worden geïmplementeerd. Dit bestand MAG NIET worden verwijderd. |
/*.Md | Markdown-bestanden | Er zijn verschillende Markdown-bestanden voor verschillende doeleinden. U kunt deze bestanden veilig verwijderen. |
/docker-compose.yml | Docker-compose | Hiermee maakt u het containerpakket voor de toepassing voordat het in Azure wordt geïmplementeerd. |
/pyproject.toml | Python-buildsysteem | Bevat de systeemvereisten voor het bouwen van Python-projecten. U kunt dit bestand wijzigen in het opnemen van uw favoriete hulpprogramma's (bijvoorbeeld om een linter- en eenheidstestframework te gebruiken). |
/requirements-dev.in | PIP-vereistenbestand | Wordt gebruikt voor het maken van een ontwikkelomgevingsversie van de vereisten met behulp van pip install -r de opdracht. U kunt dit bestand zo nodig wijzigen om andere pakketten op te nemen. |
Tip
Gebruik goede procedures voor versiebeheer, zodat u terug kunt gaan naar een bepaald tijdstip waarop het project werkte voor het geval u iets onverdubbeld onderbreekt.
Veelgestelde vragen
V: Er is een fout opgetreden bij het gebruik van een azd
sjabloon. Wat kan ik doen?
A: Zie Problemen met Azure Developer CLI oplossen. U kunt ook problemen melden in de GitHub-opslagplaats van de desbetreffende azd
sjabloon.