Azure Fundamentals · Lektion

Oprettelse af en App Service-plan og webapp

Klargør en App Service-plan, forstå SKU-niveauer, og udrul en webapplikation fra en ZIP-fil eller et GitHub-repository ved hjælp af continuous deployment.

Lektion 1 af 413 trin

Oprettelse af en App Service-plan og webapp er en gratis Azure Fundamentals-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Azure Fundamentals, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Azure Fundamentals-kurset indeholder 4 lektioner i alt.

Hvad er Azure App Service?

Azure App Service er en fuldt administreret Platform as a Service (PaaS) til hosting af webapplikationer, REST API'er og mobile backends. Du udruller din kode, og Azure håndterer opdatering af operativsystemet, belastningsfordeling og automatisk skalering af den underliggende infrastruktur. App Service understøtter .NET, Node.js, Python, Java, PHP, Ruby og brugerdefinerede containere, hvilket gør den til en af de mest alsidige compute-tjenester i Azure.

App Service-planen: faktureringsenheden

En App Service-plan definerer det område, operativsystem (Windows eller Linux) og de computerressourcer (CPU, RAM), der tildeles dine apps. Du betaler for planen, ikke for de enkelte apps — flere apps kan dele den samme plan uden ekstra omkostninger. Planens SKU-niveau bestemmer funktioner som antallet af udrulningsslots, mulighed for automatisk skalering og understøttelse af VNet-integration.

# Create an App Service Plan (Linux, Standard S1 tier)
az appservice plan create \
  --name MyAppServicePlan \
  --resource-group MyRG \
  --location eastus \
  --sku S1 \
  --is-linux

SKU-niveauer for App Service-planer

App Service-planer fås på flere niveauer med stigende funktionalitet og pris. Free (F1) og Shared (D1) kører på delt infrastruktur og er kun beregnet til udvikling. Basic (B1-B3) giver dedikerede computerressourcer uden automatisk skalering eller slots. Standard (S1-S3) tilføjer automatisk skalering og 5 udrulningsslots. Premium (P1-P3v3) tilbyder flere computerressourcer og VNet-integration. Isolated (I1-I3) kører i et privat, dedikeret miljø.

# App Service Plan tiers (ordered by capability)
# Free:     F1  — shared, 60 min/day compute
# Shared:   D1  — shared, custom domain support
# Basic:    B1, B2, B3 — dedicated, no autoscale
# Standard: S1, S2, S3 — autoscale, 5 slots
# Premium:  P1v3, P2v3, P3v3 — VNet integration
# Isolated: I1v2, I2v2 — App Service Environment (ASE)

Oprettelse af en webapp

En webapp er en individuel applikation, der hostes i en App Service-plan. Hver webapp får et unikt standardværtsnavn i formen <appname>.azurewebsites.net. Du angiver runtime-stakken (f.eks. NODE:18-lts eller DOTNET:7.0), når du opretter appen, men du kan opdatere den senere uden at udrulle appen igen.

# Create a Node.js Web App on the Linux plan
az webapp create \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --plan MyAppServicePlan \
  --runtime 'NODE:18-lts'

# Access the app
# https://MyUniqueWebApp.azurewebsites.net

Udrulning af kode til App Service

App Service understøtter flere udrulningsmetoder. ZIP-udrulning er den enkleste — pak din app, og send ZIP-filen. Git-udrulning opretter forbindelse til et Git-lager og bygger ved push. GitHub Actions og Azure Pipelines er de anbefalede CI/CD-integrationer. Du kan også udrulle et Docker-containerimage fra Azure Container Registry eller et offentligt register.

# Deploy a ZIP package
zip -r app.zip . --exclude '.git/*' --exclude 'node_modules/*'
az webapp deploy \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --src-path app.zip

# Configure deployment from GitHub
az webapp deployment source config \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --repo-url https://github.com/myorg/myrepo \
  --branch main \
  --manual-integration

Programindstillinger og miljøvariable

App Service eksponerer programindstillinger som miljøvariable for din programkode. Dette er den anbefalede måde at indsætte konfiguration som forbindelsesstrenge til databaser, API-nøgler og funktionsflag uden at hardcode dem. Indstillinger krypteres, når de er gemt, og kan referere til Azure Key Vault-hemmeligheder ved hjælp af en Key Vault-referencestreng, så du ikke behøver at gemme hemmeligheder i portalen.

# Set application settings
az webapp config appsettings set \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --settings \
    NODE_ENV=production \
    DATABASE_URL='@Microsoft.KeyVault(SecretUri=https://mykv.vault.azure.net/secrets/dburl/)'

# View current settings
az webapp config appsettings list \
  --name MyUniqueWebApp \
  --resource-group MyRG

Always On og tilstandskontroller

Som standard fjerner App Service en app fra hukommelsen efter en periode uden aktivitet. Aktivér Always On (Standard-niveau eller højere) for at holde applikationen indlæst hele tiden. Det er vigtigt for baggrundsjob og API'er, der har brug for hurtige svar efter koldstart. Funktionen tilstandskontrol sender forespørgsler til en URL, du definerer, og fjerner usunde instanser fra belastningsfordeleren, så instanser automatisk kan erstattes.

# Enable Always On
az webapp config set \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --always-on true

# Configure health check endpoint
az webapp config set \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --generic-configurations '{"healthCheckPath": "/health"}'

App Service-logge og diagnosticering

App Service har indbygget logføring for applikationslogge (stdout/stderr fra din kode), webserverlogge (HTTP-adgangslogge) og udrulningslogge. Du kan streame logge i realtid ved hjælp af Azure CLI eller aktivere lagring af logge i Blob Storage. Aktivér Application Insights for distribueret sporing og overvågning af ydeevnen gennem hele forespørgslens levetid.

# Enable application logging to file system
az webapp log config \
  --name MyUniqueWebApp \
  --resource-group MyRG \
  --application-logging filesystem \
  --level information

# Tail logs in real time
az webapp log tail \
  --name MyUniqueWebApp \
  --resource-group MyRG

Manuel skalering af App Service

Du kan skalere App Service op (til en større SKU med mere CPU/RAM) eller ud (tilføje flere instanser). Manuel skalering ud øger straks antallet af instanser og er tilgængelig fra Basic-niveauet og opefter. Skalering op til et højere niveau aktiverer ekstra funktioner som implementeringsslots og VNet-integration uden afbrydelse af tjenesten — appen genstarter kortvarigt under ændringen af SKU'en.

# Scale out: increase instance count to 3
az appservice plan update \
  --name MyAppServicePlan \
  --resource-group MyRG \
  --number-of-workers 3

# Scale up: upgrade from S1 to P2v3
az appservice plan update \
  --name MyAppServicePlan \
  --resource-group MyRG \
  --sku P2V3

Overvågning i Azure Portal

App Service-oversigtsbladet viser grafer i realtid for anmodninger, svartid, indgående og udgående data samt fejlrater. Bladet Diagnosticér og løs problemer kører automatiske detektorer for almindelige problemer. Under fanen Målinger kan du fastgøre brugerdefinerede diagrammer og oprette alarmregler. Integrer med Application Insights for sporing af anmodninger fra start til slut og afhængighedskort på tværs af hele din applikationsstak.

# View recent HTTP metrics via CLI
az monitor metrics list \
  --resource '/subscriptions/<sub>/resourceGroups/MyRG/providers/Microsoft.Web/sites/MyUniqueWebApp' \
  --metric 'Requests,Http5xx,AverageResponseTime' \
  --interval PT1M \
  --start-time 2025-01-01T00:00:00Z \
  --end-time 2025-01-01T01:00:00Z

Prisstrategier for App Service

Optimer omkostningerne ved App Service ved at samle flere apps på én plan, når de har kompatible ressourcebehov, bruge Free-niveauet til udviklings- og testmiljøer og anvende Azure Reservations (en binding på 1 eller 3 år) til forudsigelige produktionsbelastninger, så du kan spare op til 55 %. Automatisk skalering (som gennemgås i næste lektion) sikrer, at du ikke betaler for inaktive instanser uden for spidsbelastningstiderne.

Hurtigt tjek

Test din forståelse af begreberne i Microsoft Azure Fundamentals (AZ-900) fra denne lektion.

Opsummering af lektionen

I denne lektion lærte du, at en App Service-plan definerer beregningsniveauet og faktureringsenheden for dine webapps, at du kan implementere kode via ZIP, Git eller CI/CD-arbejdsgange, og at applikationsindstillinger indsætter konfiguration som miljøvariabler uden hårdkodning af hemmeligheder. Nu ser vi nærmere på implementeringsslots til udgivelser uden nedetid.

Gratis at komme i gang

Lær Azure Fundamentals med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Oprettelse af en App Service-plan og webapp” gratis?

Ja — hele teksten til “Oprettelse af en App Service-plan og webapp” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Azure Fundamentals-kurset, skal du opgradere til CoddyKit PRO. Azure Fundamentals-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Oprettelse af en App Service-plan og webapp”?

Klargør en App Service-plan, forstå SKU-niveauer, og udrul en webapplikation fra en ZIP-fil eller et GitHub-repository ved hjælp af continuous deployment. Du øver dig i Azure Fundamentals med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Azure Fundamentals?

Der kræves ingen tidligere erfaring. Azure Fundamentals på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Oprettelse af en App Service-plan og webapp”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Azure Fundamentals-lektion?

Ja. Alle Azure Fundamentals-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Oprettelse af en App Service-plan og webapp
  2. Deployment slots og swap
  3. Autoskalering og brugerdefinerede domæner
  4. App Service-godkendelse og netværk
← Tilbage til Azure Fundamentals