Kom igång med Python i Azure

Använd det här dokumentet som en checklista och en guide när du börjar utveckla Python-program som ska finnas i molnet eller använda molntjänster. Om du följer länkarna och instruktionerna i det här dokumentet gör du följande:

  • har en grundläggande förståelse för vad molnet är och hur du utformar ditt program med molnet i åtanke.
  • konfigurera din lokala utvecklingsmiljö, inklusive de verktyg och bibliotek som du behöver för att skapa molnbaserade program.
  • förstå arbetsflödet när du utvecklar molnbaserade program.

Fas 1: Learn-begrepp

Om du är nybörjare på att utveckla program för molnet hjälper den här korta serien med artiklar med videor dig att snabbt komma igång.

När du förstår grunderna i att utveckla program för molnet vill du konfigurera din utvecklingsmiljö och följa en snabbstart eller självstudie för att skapa din första app.

Fas 2: Konfigurera din lokala Python-miljö för Azure-utveckling

Om du vill utveckla Python-program med Hjälp av Azure vill du först konfigurera din lokala utvecklingsmiljö. Konfigurationen omfattar att skapa ett Azure-konto, installera verktyg för Azure-utveckling och ansluta dessa verktyg till ditt Azure-konto.

Utveckling i Azure kräver Python 3.8 eller senare. Om du vill verifiera versionen av Python på din arbetsstation skriver du kommandot python3 --version för macOS/Linux eller py --version för Windows i ett konsolfönster.

Skapa ett Azure-konto

Om du vill utveckla Python-program med Azure behöver du ett Azure-konto. Ditt Azure-konto är de autentiseringsuppgifter som du använder för att logga in på Azure med och vad du använder för att skapa Azure-resurser.

Om du använder Azure på jobbet kan du prata med företagets molnadministratör för att få dina autentiseringsuppgifter använda för att logga in på Azure.

Annars kan du skapa ett Azure-konto kostnadsfritt och få 12 månaders populära tjänster kostnadsfritt och en kredit på 200 USD för att utforska Azure i 30 dagar.

Använda Azure Portal

När du har dina autentiseringsuppgifter kan du logga in på Azure-portalenhttps://portal.azure.com. Azure-portalen är vanligtvis det enklaste sättet att komma igång med Azure, särskilt om du är nybörjare på Azure och molnutveckling. I Azure-portalen kan du utföra olika hanteringsuppgifter, till exempel att skapa och ta bort resurser.

Om du redan har erfarenhet av Azure- och molnutveckling kommer du förmodligen att börja använda verktyg som Visual Studio Code och Azure CLI. Artiklar i Python Developer Center visar hur du arbetar med Azure-portalen, Visual Studio Code och Azure CLI.

Använda Visual Studio Code

Du kan använda valfri redigerare eller IDE för att skriva Python-kod när du utvecklar för Azure. Du kan dock överväga att använda Visual Studio Code för Azure- och Python-utveckling. Visual Studio Code tillhandahåller många tillägg och anpassningar för Azure och Python, vilket gör din utvecklingscykel och distributionen från en lokal miljö till Azure enklare.

Installera för Python-utveckling med Visual Studio Code:

  • Python-tillägg. Det här tillägget omfattar IntelliSense (Pylance), Linting, Debugging (multi-threaded, remote), Jupyter Notebooks, kodformatering, refaktorisering, enhetstester med mera.

  • Azure Tools-tilläggspaket. Tilläggspaketet innehåller tillägg för att arbeta med Azure App Service, Azure Functions, Azure Storage, Azure Cosmos DB och Azure Virtual Machines i ett enkelt paket. Azure-tilläggen gör det enkelt att identifiera och interagera med Azure.

Så här installerar du tillägg från Visual Studio Code:

  1. Tryck på Ctrl+Skift+X för att öppna fönstret Tillägg .
  2. Sök efter Azure Tools-tillägget .
  3. Välj knappen Installera.

Screenshot of the Visual Studio Code showing extensions panel searching for the Azure Tools extension pack.

Mer information om hur du installerar tillägg i Visual Studio Code finns i dokumentet Extension Marketplace på Webbplatsen för Visual Studio Code.

När du har installerat Azure Tools-tillägget loggar du in med ditt Azure-konto. På den vänstra panelen visas en Azure-ikon. Välj den här ikonen så visas en kontrollpanel för Azure-tjänster. Välj Logga in på Azure... för att slutföra autentiseringsprocessen.

Screenshot of the Visual Studio Code showing how to sign-in the Azure tools to Azure.

Kommentar

Om du ser felet "Det går inte att hitta en prenumeration med namnet [prenumerations-ID]" kan det bero på att du är bakom en proxy och inte kan nå Azure-API:et. Konfigurera HTTP_PROXY och HTTPS_PROXY miljövariabler med din proxyinformation i terminalen:

# Windows
set HTTPS_PROXY=https://username:password@proxy:8080
set HTTP_PROXY=http://username:password@proxy:8080
# macOS/Linux
export HTTPS_PROXY=https://username:password@proxy:8080
export HTTP_PROXY=http://username:password@proxy:8080

Använda Azure CLI

Utöver Azure-portalen och Visual Studio Code erbjuder Azure även kommandoradsverktyget Azure CLI för att skapa och hantera Azure-resurser. Azure CLI erbjuder fördelarna med effektivitet, repeterbarhet och möjligheten att skripta återkommande uppgifter. I praktiken använder de flesta utvecklare både Azure-portalen och Azure CLI.

När du har installerat Azure CLI loggar du in på ditt Azure-konto från Azure CLI genom att skriva kommandot az login i ett terminalfönster på din arbetsstation.

az login

Azure CLI öppnar standardwebbläsaren för att slutföra inloggningsprocessen.

Konfigurera virtuell Python-miljö

När du skapar Python-program för Azure rekommenderar vi att du skapar en virtuell miljö för varje program. En virtuell miljö är en fristående katalog för en viss version av Python plus de andra paket som behövs för programmet.

Följ dessa steg för att skapa en virtuell miljö.

  1. Öppna en terminal eller kommandotolk.

  2. Skapa en mapp för projektet.

  3. Skapa den virtuella miljön:

    # py -3 uses the global python interpreter. You can also use python3 -m venv .venv.
    py -3 -m venv .venv
    

    Det här kommandot kör Python-modulen venv och skapar en virtuell miljö i mappen ".venv". Vanligtvis har .gitignore-filer en ".venv"-post så att den virtuella miljön inte checkas in med dina kodkontroller.

  4. Aktivera den virtuella miljön:

    .venv\Scripts\activate
    

    Kommentar

    Om du använder Windows-kommandogränssnittet aktiverar du den virtuella miljön med .venv\Scripts\activate. Om du använder Git Bash i Visual Studio Code i Windows använder du kommandot source .venv/Scripts/activate i stället.

När du har aktiverat den miljön (vilket Visual Studio Code gör automatiskt) installerar körningen pip install av ett bibliotek endast i den miljön. Python-kod som körs i en virtuell miljö använder de specifika paketversionerna som är installerade i den virtuella miljön. Med olika virtuella miljöer kan olika program använda olika versioner av ett paket, vilket ibland krävs. Mer information om virtuella miljöer finns i Virtuella miljöer och paket i Python-dokumenten.

Om dina krav till exempel finns i en requirements.txt-fil kan du installera dem i den aktiverade virtuella miljön med:

pip install -r requirements.txt

Fas 3: Förstå arbetsflödet för Azure-utveckling

Föregående artikel: etablering, åtkomst och hantering av resurser

Nu när du förstår Azures modell av tjänster och resurser kan du förstå det övergripande flödet för att utveckla molnprogram med Azure: etablera, koda, testa, distribuera och hantera.

Steg Primära verktyg Aktiviteter
Reservera Azure CLI, Azure Portal, VS Code Azure Tools-tillägg, Cloud Shell, Python-skript med hjälp av Azure SDK-hanteringsbibliotek Skapa resursgrupper och skapa resurser i dessa grupper. konfigurera resurser att vara redo för användning från appkod och/eller redo att ta emot Python-kod i distributioner.
Kod Kodredigerare (till exempel Visual Studio Code och PyCharm), Azure SDK-klientbibliotek, referensdokumentation Skriv Python-kod med hjälp av Azure SDK-klientbiblioteken för att interagera med etablerade resurser.
Testa Python-körning, felsökningsprogram Kör Python-kod lokalt mot aktiva molnresurser (vanligtvis utvecklings- eller testresurser i stället för produktionsresurser). Själva koden finns ännu inte i Azure, vilket hjälper dig att felsöka och iterera snabbt.
Distribuera VS Code, Azure CLI, GitHub Actions, Azure Pipelines När koden har testats lokalt distribuerar du den till en lämplig Azure-värdtjänst där själva koden kan köras i molnet. Distribuerad kod körs vanligtvis mot mellanlagrings- eller produktionsresurser.
Hantera Azure CLI, Azure-portalen, VS Code, Python-skript, Azure Monitor Övervaka appens prestanda och svarstider, gör justeringar i produktionsmiljön, migrera förbättringar tillbaka till utvecklingsmiljön för nästa omgång etablering och utveckling.

Steg 1: Etablera och konfigurera resurser

Som beskrivs i föregående artikel i den här serien är det första steget i att utveckla ett program att etablera och konfigurera de resurser som utgör målmiljön för ditt program.

Etableringen börjar med att skapa en resursgrupp i en lämplig Azure-region. Du kan skapa en resursgrupp via Azure-portalen, VS Code med Azure Tools-tillägg, Azure CLI eller med ett anpassat skript som använder Azure SDK-hanteringsbiblioteken (eller REST API).

I den resursgruppen etablerar och konfigurerar du sedan de enskilda resurser som du behöver, igen med hjälp av portalen, VS Code, CLI eller Azure SDK. (Granska återigen Guide för Azure-utvecklare för en översikt över tillgängliga resurstyper.)

Konfigurationen omfattar inställning av åtkomstprinciper som styr vilka identiteter (tjänstens huvudnamn och/eller program-ID:n) som kan komma åt dessa resurser. Åtkomstprinciper hanteras via Rollbaserad åtkomstkontroll (RBAC) i Azure. Vissa tjänster har även mer specifika åtkomstkontroller. Som molnutvecklare som arbetar med Azure måste du bekanta dig med Azure RBAC eftersom du använder det med nästan alla resurser som har säkerhetsproblem.

I de flesta programscenarier skapar du vanligtvis etableringsskript med Azure CLI- och/eller Python-koden med hjälp av Azure SDK-hanteringsbiblioteken. Sådana skript beskriver totaliteten för programmets resursbehov (i huvudsak definiera den anpassade molndator som du distribuerar programmet till). Med ett skript kan du enkelt återskapa samma uppsättning resurser i en annan miljö, till exempel utveckling, test, mellanlagring och produktion. När du automatiserar kan du undvika att utföra många upprepade steg manuellt i Azure-portalen eller VS Code. Sådana skript gör det också enkelt att etablera en miljö i en annan region eller att använda olika resursgrupper. Om du även underhåller dessa skript i källkontrolldatabaser har du även fullständig gransknings- och ändringshistorik.

Steg 2: Skriv din appkod för att använda resurser

När du har etablerat de resurser du behöver för ditt program skriver du programkoden för att arbeta med körningstidsaspekterna för dessa resurser.

I etableringssteget kan du till exempel ha skapat ett Azure Storage-konto, skapat en blobcontainer i kontot och angett åtkomstprinciper för programmet i containern. Den här etableringsprocessen visas i Exempel – Etablera Azure Storage. Från din kod kan du sedan autentisera med lagringskontot och sedan skapa, uppdatera eller ta bort blobar i containern. Den här körningsprocessen visas i Exempel – Använd Azure Storage. På samma sätt kan du ha etablerat en databas med ett schema och lämpliga behörigheter (vilket visas i Exempel – Etablera en databas), så att programkoden kan ansluta till databasen och utföra vanliga frågor för att skapa-läsa-uppdatera-ta bort.

Appkod använder vanligtvis miljövariabler för att identifiera namn och URL:er för de resurser som ska användas. Med miljövariabler kan du enkelt växla mellan molnmiljöer (utveckling, testning, mellanlagring och produktion) utan några ändringar i koden. De olika Azure-tjänster som är värdar för programkod är ett sätt att definiera de nödvändiga variablerna. I Azure App Service (som värd för webbappar) och Azure Functions (serverlös beräkning för Azure) definierar du till exempel programinställningar via Azure-portalen, VS Code eller Azure CLI, som sedan visas i koden som miljövariabler.

Som Python-utvecklare kommer du förmodligen att skriva programkoden i Python med hjälp av Azure SDK-klientbiblioteken för Python. Med detta sagt kan alla oberoende delar av ett molnprogram skrivas på valfritt språk som stöds. Om du arbetar i ett team med flera programmeringsspråk är det möjligt att vissa delar av programmet använder Python, vissa JavaScript, vissa Java och andra C#.

Programkod kan använda Azure SDK-hanteringsbiblioteken för att utföra etablerings- och hanteringsåtgärder efter behov. Etableringsskript kan på samma sätt använda SDK-klientbiblioteken för att initiera resurser med specifika data eller utföra hushållningsuppgifter på molnresurser även när skripten körs lokalt.

Steg 3: Testa och felsöka din appkod lokalt

Utvecklare gillar vanligtvis att testa appkod på sina lokala arbetsstationer innan de distribuerar koden till molnet. Att testa appkod lokalt innebär att du vanligtvis kommer åt andra resurser som du redan har etablerat i molnet, till exempel lagring, databaser och så vidare. Skillnaden är att du ännu inte kör själva appkoden i en molntjänst.

Genom att köra koden lokalt kan du också dra full nytta av felsökningsfunktioner som erbjuds av verktyg som Visual Studio Code och hantera koden på en lagringsplats för källkodskontroll.

Du behöver inte ändra koden alls för lokal testning: Azure har fullt stöd för lokal utveckling och felsökning med samma kod som du distribuerar till molnet. Miljövariabler är återigen nyckeln: i molnet kan koden komma åt värdresursens inställningar som miljövariabler. När du skapar samma miljövariabler lokalt körs samma kod utan ändringar. Det här mönstret fungerar för autentiseringsuppgifter, resurs-URL:er, anslutningssträng och valfritt antal andra inställningar, vilket gör det enkelt att använda resurser i en utvecklingsmiljö när du kör kod lokalt och produktionsresurser när koden har distribuerats till molnet.

Steg 4: Distribuera din appkod till Azure

När du har testat koden lokalt är du redo att distribuera koden till den Azure-resurs som du har etablerat som värd för den. Om du till exempel skriver en Django-webbapp distribuerar du antingen koden till en virtuell dator (där du tillhandahåller din egen webbserver) eller till Azure App Service (som tillhandahåller webbservern åt dig). När koden har distribuerats körs den på servern i stället för på den lokala datorn och kan komma åt alla Azure-resurser som den har behörighet för.

Som nämnts i föregående avsnitt distribuerar du först koden till de resurser som du har etablerat i en utvecklingsmiljö i vanliga utvecklingsprocesser. Efter en omgång tester distribuerar du koden till resurser i en mellanlagringsmiljö, vilket gör programmet tillgängligt för testteamet och kanske förhandsversionskunder. När du är nöjd med programmets prestanda kan du distribuera koden till din produktionsmiljö. Alla dessa distributioner kan också automatiseras genom kontinuerlig integrering och kontinuerlig distribution med hjälp av Azure Pipelines och GitHub Actions.

Men du gör det, när koden har distribuerats till molnet blir den verkligen ett molnprogram som körs helt på serverdatorerna i Azure-datacenter.

Steg 5: Hantera, övervaka och revidera

Efter distributionen vill du se till att programmet fungerar som det ska, svara på kundförfrågningar och använda resurser effektivt (och till lägsta kostnad). Du kan hantera hur Azure automatiskt skalar distributionen efter behov och du kan samla in och övervaka prestandadata med Azure-portalen, VS Code, Azure CLI eller anpassade skript som skrivits med Azure SDK-biblioteken. Du kan sedan göra realtidsjusteringar av dina etablerade resurser för att optimera prestandan igen med något av samma verktyg.

Övervakning ger dig insikter om hur du kan omstrukturera ditt molnprogram. Du kan till exempel upptäcka att vissa delar av en webbapp (till exempel en grupp API-slutpunkter) endast används ibland i jämförelse med de primära delarna. Du kan sedan välja att distribuera dessa API:er separat som serverlösa Azure Functions. Som funktioner har de egna beräkningsresurser som inte konkurrerar med huvudprogrammet, men som bara kostar ören per månad. Ditt huvudprogram blir sedan mer dynamiskt för fler kunder utan att behöva skala upp till en högre kostnadsnivå.

Nästa steg

Nu är du bekant med den grundläggande strukturen i Azure och det övergripande utvecklingsflödet: etablera resurser, skriva och testa kod, distribuera koden till Azure och sedan övervaka och hantera dessa resurser.