Creazione di un piano App Service e di una web app
Effettui il provisioning di un piano App Service, comprenda i livelli SKU e distribuisca un'applicazione web da un file ZIP o da un repository GitHub usando la distribuzione continua.
Creazione di un piano App Service e di una web app è una lezione Cloud & IT Cert Prep gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cloud & IT Cert Prep, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.
Che cos'è Azure App Service?
Azure App Service è una piattaforma completamente gestita di tipo Platform as a Service (PaaS) per ospitare applicazioni Web, API REST e backend per dispositivi mobili. Lei distribuisce il codice e Azure gestisce l'applicazione delle patch al sistema operativo, il bilanciamento del carico e la scalabilità automatica dell'infrastruttura sottostante. App Service supporta .NET, Node.js, Python, Java, PHP, Ruby e container personalizzati, risultando uno dei servizi di calcolo più versatili di Azure.
Piano App Service: l'unità di fatturazione
Un piano App Service definisce l'area, il sistema operativo (Windows o Linux) e le risorse di calcolo (CPU, RAM) assegnate alle app. Il pagamento riguarda il piano, non le singole app: più app possono condividere lo stesso piano senza costi aggiuntivi. Il livello SKU del piano determina funzionalità come il numero di slot di distribuzione, la possibilità di usare la scalabilità automatica e il supporto per l'integrazione con VNet.
# Create an App Service Plan (Linux, Standard S1 tier)
az appservice plan create \
--name MyAppServicePlan \
--resource-group MyRG \
--location eastus \
--sku S1 \
--is-linuxLivelli SKU dei piani App Service
I piani App Service sono disponibili in diversi livelli, con capacità e costi crescenti. Free (F1) e Shared (D1) vengono eseguiti su infrastruttura condivisa e sono destinati esclusivamente allo sviluppo. Basic (B1-B3) fornisce risorse di calcolo dedicate senza scalabilità automatica né slot. Standard (S1-S3) aggiunge la scalabilità automatica e 5 slot di distribuzione. Premium (P1-P3v3) offre più risorse di calcolo e l'integrazione con VNet. Isolated (I1-I3) viene eseguito in un ambiente privato e dedicato.
# 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)Creazione di una Web App
Una Web App è una singola applicazione ospitata all'interno di un piano App Service. Ogni app Web riceve un nome host predefinito univoco nella forma <appname>.azurewebsites.net. Durante la creazione dell'app si specifica lo stack di runtime, ad esempio NODE:18-lts o DOTNET:7.0, che può tuttavia essere aggiornato in seguito senza una nuova distribuzione.
# 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.netDistribuzione del codice in App Service
App Service supporta diversi metodi di distribuzione. La distribuzione ZIP è la più semplice: prepari il pacchetto dell'app e invii il file ZIP. La distribuzione Git si connette a un repository Git ed esegue la compilazione a ogni push. GitHub Actions e Azure Pipelines sono le integrazioni CI/CD consigliate. È inoltre possibile distribuire un'immagine container Docker da Azure Container Registry o da qualsiasi registry pubblico.
# 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-integrationImpostazioni dell'app e variabili d'ambiente
App Service espone le impostazioni dell'applicazione come variabili d'ambiente al codice dell'app. Questo è il metodo consigliato per inserire configurazioni come stringhe di connessione al database, chiavi API e flag delle funzionalità senza codificarle direttamente. Le impostazioni sono crittografate quando inattive e possono fare riferimento ai segreti di Azure Key Vault usando una stringa di riferimento a Key Vault, eliminando la necessità di archiviare i segreti nel portale.
# 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 MyRGAlways On e controlli di integrità
Per impostazione predefinita, App Service scarica un'app dopo un periodo di inattività. Abiliti Always On (livello Standard e superiori) per mantenere l'applicazione sempre caricata; ciò è importante per i processi in background e le API che richiedono risposte rapide all'avvio a freddo. La funzionalità health check invia richieste a un URL definito da Lei e rimuove le istanze non integre dal bilanciatore del carico, consentendo la sostituzione automatica delle istanze.
# 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"}'Log e diagnostica di App Service
App Service offre funzionalità di logging integrate per i log dell'applicazione (stdout/stderr del codice), i log del server Web (log degli accessi HTTP) e i log di distribuzione. È possibile trasmettere i log in tempo reale usando Azure CLI oppure abilitare l'archiviazione dei log in Blob Storage. Abiliti Application Insights per il tracing distribuito e il monitoraggio delle prestazioni durante l'intero ciclo di vita della richiesta.
# 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 MyRGRidimensionamento manuale di App Service
È possibile ridimensionare App Service verticalmente (passando a uno SKU più grande con più CPU/RAM) oppure orizzontalmente (aggiungendo altre istanze). Il ridimensionamento orizzontale manuale aumenta immediatamente il numero di istanze ed è disponibile a partire dal livello Basic. Il ridimensionamento verticale a un livello superiore abilita funzionalità aggiuntive, come gli slot di distribuzione e l'integrazione con VNet, senza interruzioni del servizio: l'app viene riavviata brevemente durante la modifica dello SKU.
# 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 P2V3Monitoraggio nel portale Azure
Il riquadro Panoramica di App Service mostra grafici in tempo reale per richieste, tempo di risposta, dati in entrata e in uscita e tassi di errore. Il riquadro Diagnostica e risoluzione dei problemi esegue strumenti di rilevamento automatico per i problemi più comuni. La scheda Metrica consente di aggiungere grafici personalizzati e impostare regole di avviso. Integri App Service con Application Insights per tracciare le richieste end-to-end e visualizzare le mappe delle dipendenze nell'intero stack applicativo.
# 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:00ZStrategie di prezzo di App Service
Ottimizzi i costi di App Service consolidando più app in un unico piano quando hanno esigenze di risorse compatibili, usando il livello Free per gli ambienti di sviluppo e test e applicando le prenotazioni di Azure (con impegno di 1 o 3 anni) per carichi di lavoro di produzione prevedibili, ottenendo un risparmio fino al 55%. Il ridimensionamento automatico (trattato nella prossima lezione) evita di pagare istanze inattive nelle ore di minor traffico.
Verifica rapida
Verifichi la Sua comprensione dei concetti di Microsoft Azure Fundamentals (AZ-900) trattati in questa lezione.
Riepilogo della lezione
In questa lezione ha appreso che un piano App Service definisce il livello di calcolo e l'unità di fatturazione per le app Web; è possibile distribuire il codice tramite ZIP, Git o pipeline CI/CD; e le impostazioni dell'applicazione inseriscono la configurazione come variabili d'ambiente senza codificare direttamente i segreti. Nella prossima lezione esamineremo gli slot di distribuzione per rilasci senza tempi di inattività.
Domande Frequenti
La lezione «Creazione di un piano App Service e di una web app» è gratuita?
Sì — il testo completo di «Creazione di un piano App Service e di una web app» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cloud & IT Cert Prep, passa a CoddyKit PRO. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.
Cosa imparerò in «Creazione di un piano App Service e di una web app»?
Effettui il provisioning di un piano App Service, comprenda i livelli SKU e distribuisca un'applicazione web da un file ZIP o da un repository GitHub usando la distribuzione continua. Eserciti Cloud & IT Cert Prep con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Cloud & IT Cert Prep?
Non è richiesta alcuna esperienza precedente. Cloud & IT Cert Prep su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Creazione di un piano App Service e di una web app»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Cloud & IT Cert Prep?
Sì. Ogni lezione Cloud & IT Cert Prep include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Creazione di un piano App Service e di una web app
- Slot di distribuzione e swap
- Ridimensionamento automatico e domini personalizzati
- Autenticazione e rete di App Service