Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure Developer CLI (azd) stöder flera IaC-leverantörer (infrastruktur som kod), inklusive:
Som standard azd förutsätter vi att Bicep är IaC-providern. 
              Se artikeln Jämföra Terraform och Bicep för hjälp med att avgöra vilken IaC-provider som är bäst för ditt projekt.
Kommentar
Terraform är fortfarande i betaversion. Läs mer om stöd för alfa- och betafunktioner på sidan för funktionsversioner och lanseringsstrategi
Förutsättningar
- Installera och konfigurera Terraform
- Installera och logga in på Azure CLI (v 2.38.0+)
- Granska arkitekturdiagrammet och de Azure-resurser som du distribuerar i mallen Node.js eller Python Terraform.
Kommentar
Terraform förlitar sig inte på en Azure CLI-inloggning, men azd kräver Azure CLI. Läs mer om detta krav i Terraforms officiella dokumentation.
Konfigurera Terraform som IaC-provider
- azure.yamlÖppna filen som finns i roten för projektet och kontrollera att du har följande rader för att åsidosätta standardvärdet, som är Bicep:- infra: provider: terraform
- Lägg till alla dina - .tf-filer i katalogen- infrasom finns i projektets rot.
- Kör - azd up.
Kommentar
Kolla in dessa två azd-mallar med Terraform som IaC-provider: Node.js och Terraform och Python och Terraform.
              azd pipeline config för Terraform
Terraform lagrar tillstånd om din hanterade infrastruktur och konfiguration. På grund av den här tillståndsfilen måste du aktivera fjärrtillstånd innan du kör azd pipeline config för att konfigurera distributionspipelinen i GitHub.
Som standardinställning förutsätter azd användningen av en lokal tillståndsfil. Om du körde azd up innan du aktiverade fjärrtillståndet måste du köra azd down och växla till fjärrtillståndsfilen.
Lokalt vs externt tillstånd
Terraform använder beständiga tillståndsdata för att hålla reda på de resurser som hanteras.
Scenarier för att aktivera fjärrtillstånd:
- För att tillåta delad åtkomst till statens data och att tillåta flera personer att arbeta tillsammans på den samlingen av infrastrukturresurser
- För att undvika att exponera känslig information som ingår i tillståndsfilen
- För att minska risken för oavsiktlig borttagning på grund av att spara tillstånd lokalt
Aktivera fjärrtillstånd
- Kontrollera att du konfigurerar ett fjärrtillståndslagringskonto. 
- Lägg till en ny fil med namnet - provider.conf.jsoni- inframappen .- { "storage_account_name": "${RS_STORAGE_ACCOUNT}", "container_name": "${RS_CONTAINER_NAME}", "key": "azd/azdremotetest.tfstate", "resource_group_name": "${RS_RESOURCE_GROUP}" }
- Uppdatering - provider.tfhittades i- inframappen för att ställa in att serverdelen ska vara fjärransluten- # Configure the Azure Provider terraform { required_version = ">= 1.1.7, < 2.0.0" backend "azurerm" { }
- Kör - azd env set <key> <value>för att lägga till konfiguration i- .envfilen. Till exempel:- azd env set RS_STORAGE_ACCOUNT your_storage_account_name azd env set RS_CONTAINER_NAME your_terraform_container_name azd env set RS_RESOURCE_GROUP your_storage_account_resource_group
- Kör nästa - azdkommando enligt ditt vanliga arbetsflöde. När fjärrtillstånd upptäcks initierar- azdTerraform med den konfigurerade backend-konfigurationen.
- Om du vill dela miljön med gruppmedlemmar, se till att de kör - azd env refresh -e <environmentName>för att uppdatera miljöinställningarna i det lokala systemet och utför steg 4 för att lägga till konfigurationen i- .env-filen.
Se även
- Läs mer om Terraforms beroende av Azure CLI.
- Mer information om fjärrtillstånd finns i Lagra Terraform-tillstånd i Azure Storage.
- Mall: React Web App med Node.js API och MongoDB (Terraform) i Azure