Le Azure Web App sono lo strumento principale per la distribuzione di applicativi web sul cloud di Microsoft. Ci sono parecchi metodi per caricare su di esse il nostro applicativo: web deploy, REST e continuos delivery tramite repository esterni come DropBox, Git o Visual Studio Team Services.
Di recente è stata introdotta la possibilità di eseguire la nostra app senza un effettivo deployment, facendolo puntare la web app ad un file Zip remoto. Ipotizziamo quindi di preparare le nostre pagine HTML e di creare un unico file che contenga tutto il necessario, anche sfruttando la funzione publish di .NET, per esempio. Possiamo caricare il file online, come per esempio su Azure Storage che si presta bene anche per nascondere i file e renderli accessibili tramite firma.
Successivamente non ci resta che aprire le impostazioni dell'app e aggiungere una chiave speciale WEBSITE_USE_ZIP, come mostrato nell'immagine.

Fatto questo, il classico percorso d:\home\wwwroot viene sostituito puntando al file remoto. Questo porta alcuni vantaggi:
- Atomicità nella distribuzione: non corriamo rischi di lock di file, di conflitti e non dobbiamo gestire la cancellazione di file addizionali. Cambiando il percorso tutto l'applicativo punta al nuovo file;
- Versionamento facilitato: è sufficiente cambiare l'indirizzo e in un attimo possiamo cambiare la versione corrente dell'applicativo.
Questa funzionalità non preclude le altre. Ad eccezione del percorso prima citato, le altre cartelle rimangono in scrittura e ogni caratteristica configurabile rimane funzionante.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Monitorare il change feed di Azure Cosmos DB con le Azure Function
Generare dati di test con la libreria GenFu in ASP.NET Core
Connettersi tramite SSH ad un App Service Linux
Ottimizzare prestazioni e costi di Azure SQL Database con gli Elastic Pool
Copiare container di Azure Storage tra più account con AzCopy
Gestire il warmup di una web app Azure in bilanciamento di carico
Disabilitare il tracking degli oggetti in Entity Framework Core
Implementare un blocco territoriale in ASP.NET Core
Credenziali sicure con Managed identities per Microsoft Azure
Utilizzare il nuovo Azure Alert per ricevere notifiche sulle risorse
Usare NGINX come reverse proxy di ASP.NET Core
Aggiungere il metodo SelectMany alla classe Array in TypeScript
I più letti di oggi
- Utilizzare i tipi spatial con Entity Framework Core 2.2
- Chiamare direttamente un numero di telefono con HTML5
- Utilizzare i tipi spatial con Entity Framework Core 2.2
- C# 8
- Leggere le informazioni dell'app package nella Universal Windows Platform
- Spostare elementi tra liste utilizzando il Drag&Drop e Angular CDK