Azure Developer CLI-ondersteuning toevoegen aan uw app met behulp van een bestaande sjabloon
De Azure Developer CLI (azd
) biedt twee verschillende werkstromen voor het initialiseren van een sjabloon voor gebruik met uw app, waaronder:
- Gebruik code in de huidige map: met deze benadering analyseert u uw app en worden ondersteunde infrastructuur- en configuratiebronnen automatisch gegenereerd.
- Selecteer een sjabloon: Met deze methode kunt u een bestaande sjabloon integreren met uw app of een bestaande sjabloon gebruiken als uitgangspunt voor een nieuwe app.
Beide methoden worden verkend in het overzichtsdocumenten voor Azure Developer CLI-sjablonen maken.
In dit artikel leert u hoe u ondersteuning voor de Azure Developer CLI (azd
) kunt toevoegen aan uw app via de methode Een sjabloon selecteren . Ga naar de ondersteuning toevoegen azd
aan uw app met behulp van een bestaand sjabloondocumenten voor meer informatie over de alternatieve benadering. U kunt ook de trainings- en implementatiesjablonen azd
bezoeken voor meer informatie over het bouwen van azd
sjablonen.
Selecteer een sjabloon voor uw app
Met de werkstroom Een sjabloon selecteren van de azd init
opdracht kunt u een bestaande azd
sjabloon kiezen die u als uitgangspunt wilt gebruiken. De inhoud van de geselecteerde sjabloon wordt toegevoegd aan de hoofdmap van uw project. De meeste sjablonen bieden de vereiste set bestanden en mappen en veel bevatten een volledige set infrastructuur als codebestanden voor het inrichten van azd
Azure-resources voor een gekozen toepassingsstack.
In dit voorbeeld gebruikt u de Starter - Bicep-sjabloon , die de essentiële structuur van een azd
sjabloon bevat en nuttige standaardcode om aan de slag te gaan. Startersjablonen zijn een uitstekende keuze wanneer u de juiste sjabloonstructuur en beginresources wilt maken, maar nog steeds uw eigen infrastructuurbestanden wilt maken.
Als u de stappen vooruit wilt volgen met behulp van een bestaande voorbeeldtoepassing, kloont u het volgende startersproject naar een lege map op uw computer:
git clone https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart
Navigeer in het opdrachtregelprogramma naar keuze naar de hoofdmap van het gekloonde project.
Voer de
azd init
opdracht uit om eenazd
sjabloon te initialiseren.azd init
Wanneer u hierom wordt gevraagd, kiest u de optie om een sjabloon te selecteren.
Selecteer Starter - Bicep in de lijst met sjablonen. U kunt de naam van de sjabloon typen of de pijltoetsen van het toetsenbord gebruiken om deze te vinden.
Wanneer u hierom wordt gevraagd, voert u een korte omgevingsnaam in, zoals testenv.
Nadat u hebt uitgevoerd
azd init
, worden de volgende assets toegevoegd aan uw huidige directory:├── .azdo [ Configures an Azure Pipeline ] ├── .devcontainer [ For DevContainer ] ├── .github [ Configures a GitHub workflow ] ├── .vscode [ VS Code workspace configurations ] ├── .azure [ Stores Azure configurations and environment variables ] ├── infra [ Contains infrastructure as code files ] │ ├── main.bicep/main.tf [ Main infrastructure file ] │ ├── main.parameters.json/main.tfvars.json [ Parameters file ] │ └── core/modules [ Contains reusable Bicep/Terraform modules ] └── azure.yaml [ Describes the app and type of Azure resources]
De Bicep-bestanden bijwerken
Uw project bevat nu de kernstructuur en assets van een azd
sjabloon. Als u echter de Azure-resources voor uw specifieke project wilt inrichten, moeten de Bicep-bestanden in de infra
map worden bijgewerkt. Als u de voorbeeldtoepassing wilt hosten, moet u de volgende resources definiëren met bicep-bestanden:
- Een Azure-app-serviceplan
- Een Azure-app-service die wordt uitgevoerd op Linux
Open de hoofdprojectmap in uw gewenste editor, zoals Visual Studio Code.
Open het
main.bicep
bestand in deinfra
map met behulp van uw editor. Dit bestand bevat nuttige standaardcode voor het instellen van essentiële variabelen, parameters en naamconventies. Voeg onder het opmerkingenblok rond regel 50 dat wordt gelezenAdd resources to be provisioned below
de volgende Bicep toe:// Creates an app service instance to host the app module web './core/host/appservice.bicep' = { name: 'web' scope: rg params: { name: '${abbrs.webSitesAppService}web-${resourceToken}' location: location tags: union(tags, { 'azd-service-name': 'web' }) appServicePlanId: appServicePlan.outputs.id runtimeName: 'python' runtimeVersion: '3.8' scmDoBuildDuringDeployment: true } } // Create an App Service Plan to group applications under the same payment plan and SKU module appServicePlan './core/host/appserviceplan.bicep' = { name: 'appserviceplan' scope: rg params: { name: '${abbrs.webServerFarms}${resourceToken}' location: location tags: tags sku: { name: 'B1' } } }
Notitie
- Er wordt een unieke tekenreeks gegenereerd op basis van abonnements-id en gebruikt als een
${resourceToken}
variabele. Dit token wordt toegevoegd aan de naam van alle Azure-resources die zijn gemaakt doorazd
. azd
gebruikt tags om resources te identificeren, zodat u de namen kunt wijzigen op basis van de naamconventie van uw organisatie.- De
'azd-service-name': 'web'
tag in de App Service is de waardeazd
die wordt gebruikt om de implementatiehost te identificeren. De waarde moet hetzelfde zijn als wat is gedefinieerd voor de service in het bestand azure.yaml .
- Er wordt een unieke tekenreeks gegenereerd op basis van abonnements-id en gebruikt als een
Het bestand azure.yaml bijwerken
Als u de app wilt implementeren, azd
moet u meer weten over uw app. Het azure.yaml
bestand wordt gebruikt voor het definiëren van de locatie, taal van de broncode en de Azure-hostingservice voor elke service in uw app. Raadpleeg het schema azure.yaml voor meer informatie.
Open de
azure.yaml
hoofdmap van het project.Voeg de volgende regels toe aan de onderkant van het bestand:
name: msdocs-python-flask-webapp-quickstart services: web: project: . language: py host: appservice
De sjabloon inrichten en implementeren
Sla al uw wijzigingen op en voer de volgende opdracht uit om de app-resources in Azure in te richten en te implementeren:
azd up
Wanneer de opdracht is voltooid, klikt u op de koppeling in de opdrachtuitvoer om naar de geïmplementeerde site te navigeren.
Uw project is nu compatibel met Azure Developer CLI en kan als sjabloon worden gebruikt.
Notitie
azd
biedt ook ondersteuning voor het gebruik van Buildpack voor het in containers opslaan van uw apps. Als uw azd
sjabloon is gericht op Azure Container Apps of Azure Kubernetes Service, maar geen Docker-bestand bevat, azd
genereert u automatisch een installatiekopieën met behulp van Buildpack.