Condividi tramite


Guida introduttiva: Eseguire un contenitore personalizzato in Azure

app Azure Servizio fornisce stack di applicazioni predefiniti in Windows, ad esempio ASP.NET o Node.js, eseguiti in IIS. Gli stack di applicazioni preconfigurati bloccano il sistema operativo e impediscono l'accesso di basso livello. I contenitori di Windows personalizzati non hanno queste restrizioni. Consentono agli sviluppatori di personalizzare completamente i contenitori e concedere alle applicazioni in contenitori l'accesso completo alle funzionalità di Windows.

Questa guida introduttiva illustra come distribuire un'app ASP.NET in un'immagine di Windows per Registro Azure Container da Visual Studio. ed eseguirla in un contenitore personalizzato in Servizio app di Azure.

Prerequisiti

  • Installare Docker per Windows

  • Impostare Docker per eseguire contenitori Windows

  • Installare Visual Studio 2022 con i carichi di lavoro Sviluppo ASP.NET e Web e Sviluppo di Azure. In Visual Studio 2022 Community assicurarsi che il componente dei modelli di progetto e di elementi di .NET Framework sia selezionato con ASP.NET e carico di lavoro sviluppo Web. Se Visual Studio 2022 è già stato installato:

    • Installare gli aggiornamenti più recenti in Visual Studio selezionando ?>Controlla aggiornamenti.
    • Aggiungere i carichi di lavoro in Visual Studio selezionando Strumenti>Ottieni strumenti e funzionalità.

Creare un'app Web ASP.NET

Creare un'app Web ASP.NET seguendo questa procedura:

  1. Aprire Visual Studio e selezionare Crea un nuovo progetto.

  2. In Crea un nuovo progetto selezionare ASP.NET'applicazione Web (.NET Framework) per C#, quindi selezionare Avanti.

    Screenshot della finestra di dialogo Crea un nuovo progetto.

  3. In Configura il nuovo progetto all’interno di Nome progetto, denominare l’applicazione myfirstazurewebapp. In Frameworkselezionare .NET Framework 4.8 e successivamente Crea.

    Screenshot del progetto Configura l'app Web.

  4. È possibile distribuire qualsiasi tipo di app Web ASP.NET in Azure. Per questa guida di avvio rapido scegliere il modello MVC.

  5. In Autenticazione, selezionare Nessuna. In Avanzate selezionare Supporto contenitori e deselezionare Configura per HTTPS. Selezionare Crea.

    Screenshot della finestra di dialogo Crea ASP.NET'applicazione Web.

  6. Se il file Dockerfile non viene aperto automaticamente, aprirlo da Esplora soluzioni.

  7. È necessaria un'immagine padre supportata. Modificare l'immagine padre sostituendo la riga FROM con il codice seguente e salvare il file:

    FROM mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
    
  8. Nel menu di Visual Studio selezionare Debug>Avvia senza eseguire debug per eseguire l'app Web in locale.

    Screenshot dell'app in esecuzione in locale.

Pubblicare nel Registro Azure Container

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto myfirstazurewebapp e scegliere Pubblica.

  2. In Destinazioneselezionare Registro Contenitori Docker e successivamente Avanti.

    Screenshot della schermata Seleziona registro Contenitori Docker.

  3. In Specifica destinazione selezionare Registro Azure Container e successivamente Avanti.

    Screenshot della pagina di panoramica Pubblica dal progetto.

  4. In Pubblica scegliere la sottoscrizione corretta. In Registri contenitori selezionare Crea nuovo per creare un nuovo Registro Azure Container.

    Screenshot della schermata Crea nuovo Registro Azure Container.

  5. In Crea nuovo selezionare la sottoscrizione corretta. In Gruppo di risorse selezionare Nuovo e digitare myResourceGroup come nome quindi selezionare OK. In SKU selezionare Basic. In Percorso del registro di sistemaselezionare un percorso del registro di sistema e successivamente Crea.

    Screenshot dei dettagli di Registro Azure Container.

  6. In Pubblica, in Registro contenitori selezionare il registro creato e successivamente Fine.

    Screenshot della schermata Seleziona registro Azure Container esistente.

    Attendere il completamento della distribuzione. La pagina Pubblica mostra ora il nome del repository. Selezionare il pulsante Copia per copiare il nome del repository per un secondo momento.

    Schermata che evidenzia il nome del repository.

Creare un contenitore personalizzato di Windows

  1. Accedere al portale di Azure.

  2. Scegliere Crea una risorsa nell'angolo in alto a sinistra del portale di Azure.

  3. In Servizi popolari selezionare Crea in App Web.

  4. In Crea App Web selezionare la propria sottoscrizione e un gruppo in Gruppo di risorse. Se necessario, è possibile creare un nuovo gruppo di risorse.

  5. Specificare un nome dell'app, ad esempio win-container-demo. Per Pubblica selezionare Contenitore. Per Sistema operativo selezionare Windows.

    Screenshot di Creazione di un'app Web per contenitori.

  6. Selezionare Avanti: Database, quindi Avanti: Contenitore per continuare.

  7. Per Origine immagine selezionare Docker Hub e per Immagine e tag immettere il nome del repository copiato in Eseguire la pubblicazione in Registro Azure Container.

    Screenshot di Configurare l'app Web per contenitori.

    Se si ha un'immagine personalizzata per l'applicazione Web in un'altra posizione, ad esempio in Registro Azure Container o in qualsiasi altro repository privato, si può configurare tale immagine. Selezionare Rivedi + crea per continuare.

  8. Verificare tutti i dettagli e quindi selezionare Crea.

    Screenshot di Create your Web App for Containers (Creare l'app Web per contenitori).

    Attendere che Azure crei le risorse necessarie.

Passare al contenitore personalizzato

Al termine dell'operazione, il portale di Azure visualizza una notifica.

Screenshot della distribuzione riuscita.

  1. Selezionare Vai alla risorsa.

  2. Nella panoramica di questa risorsa, seguire il collegamento accanto a Dominio predefinito.

Si aprirà la nuova pagina del browser illustrata di seguito:

Screenshot dell'avvio del contenitore personalizzato di Windows.

Attendere alcuni minuti e riprovare, finché non viene visualizzata la pagina iniziale di ASP.NET predefinita:

Screenshot del contenitore personalizzato di Windows in esecuzione.

Complimenti. È ora in esecuzione il primo contenitore Windows personalizzato nel servizio app di Azure.

Visualizzare i log di avvio del contenitore

Il caricamento del contenitore di Windows può richiedere del tempo. Per visualizzare lo stato di avanzamento, andare all'URL seguente sostituendo <app-name> con il nome dell'app.

https://<app_name>.scm.azurewebsites.net/api/logstream

I log trasmessi sono simili al seguente:

2018-07-27T12:03:11  Welcome, you are now connected to log-streaming service.
27/07/2018 12:04:10.978 INFO - Site: win-container-demo - Start container succeeded. Container: facbf6cb214de86e58557a6d073396f640bbe2fdec88f8368695c8d1331fc94b
27/07/2018 12:04:16.767 INFO - Site: win-container-demo - Container start complete
27/07/2018 12:05:05.017 INFO - Site: win-container-demo - Container start complete
27/07/2018 12:05:05.020 INFO - Site: win-container-demo - Container started successfully

Eseguire l'aggiornamento e la ridistribuzione in locale

  1. In Esplora soluzioni di Visual Studio aprire Visualizzazioni>Home>Index.cshtml.

  2. Trovare il tag HTML <div class="jumbotron"> in alto e sostituire l'intero elemento con il codice seguente:

    <div class="jumbotron">
        <h1>ASP.NET in Azure!</h1>
        <p class="lead">This is a simple app that we've built that demonstrates how to deploy a .NET app to Azure App Service.</p>
    </div>
    
  3. Per la ridistribuzione in Azure, fare clic con il pulsante destro del mouse sul progetto myfirstazurewebapp in Esplora soluzioni e scegliere Pubblica.

  4. Nella pagina di pubblicazione selezionare Pubblica e attendere il completamento della pubblicazione.

  5. Per indicare al servizio a di eseguire il pull della nuova immagine da Hub Docker, riavviare l'app. Nella pagina dell'app nel portale di Azure selezionare Riavvia>Sì.

    Screenshot della panoramica del Servizio app con il pulsante Riavvia evidenziato.

Andare di nuovo al contenitore personalizzato. Quando si aggiorna la pagina Web, l'app dovrebbe tornare alla pagina "Avvio" in un primo momento, quindi visualizzare la pagina Web aggiornata.

Screenshot dell'app Web aggiornata in Azure.

Pulire le risorse

Nei passaggi precedenti sono state create risorse di Azure in un gruppo di risorse. Se non si prevede di aver bisogno di queste risorse in futuro, è possibile eliminarle eliminando il gruppo di risorse.

Nel menu del portale di Azure o nella pagina Home selezionare Gruppi di risorse. Quindi, nella pagina Gruppi di risorse selezionare myResourceGroup.

Nella pagina myResourceGroup assicurarsi che le risorse elencate siano quelle da eliminare.

Selezionare Elimina gruppo di risorse, digitare myResourceGroup nella casella di testo per confermare e quindi selezionare Elimina.

app Azure Servizio in Linux offre stack di applicazioni predefiniti in Linux con supporto per linguaggi come .NET, Java, Node.js e PHP. È anche possibile usare un'immagine Docker personalizzata per eseguire l'app Web in uno stack di applicazioni non ancora definito in Azure. Questo argomento di avvio rapido illustra come distribuire un'immagine da un Registro Azure Container al servizio app.

Per altre informazioni sulle applicazioni in contenitori in un ambiente serverless, vedere App contenitore.

Prerequisiti

Creare un registro contenitori

Questa guida introduttiva usa Registro Azure Container come registro. È possibile usare altri registri, ma i passaggi potrebbero differire leggermente.

Creare un registro contenitori seguendo le istruzioni riportate in Avvio rapido - Creare un registro contenitori privato usando il portale di Azure.

Importante

Assicurarsi di impostare l'opzione Utente amministratore su Abilita durante la creazione del registro Azure Container. È anche possibile impostare questa opzione dalla sezione Chiavi di accesso della pagina del registro nel portale di Azure. Questa impostazione è obbligatoria per l'accesso al servizio app. Per l'identità gestita, vedere l'esercitazione Distribuire da ACR.

Accedere

  1. Avviare Visual Studio Code.

  2. Selezionare il logo di Azure nella barra delle attività, passare a ACCOUNT e TENANT. Selezionare Accedi ad Azure e seguire le istruzioni.

    Screenshot dell'accesso ad Azure in Visual Studio Code.

  3. Nella barra di stato nella parte inferiore verificare l'indirizzo di posta elettronica dell'account Azure. Nell’explorer SERVIZIO APP verrà visualizzata la sottoscrizione.

  4. Nella barra delle attività selezionare il logo Docker. Nell’explorer REGISTRI verificare che venga visualizzato il registro contenitori creato.

    Screenshot che mostra il valore Registries con Azure espanso.

Verificare i prerequisiti

Verificare che Docker sia installato e in esecuzione. Il comando seguente visualizza la versione di Docker se è in esecuzione.

docker --version

Creare e compilare un'immagine

  1. In Visual Studio Code aprire una cartella vuota e aggiungere un file denominato Dockerfile. Nel Dockerfile incollare il contenuto in base al framework di linguaggio desiderato:

    In questo Dockerfile l'immagine padre è uno dei contenitori .NET predefiniti del Servizio app.

    FROM mcr.microsoft.com/appsvc/dotnetcore:lts
    
    ENV PORT 8080
    EXPOSE 8080
    
    ENV ASPNETCORE_URLS "http://*:${PORT}"
    
    ENTRYPOINT ["dotnet", "/defaulthome/hostingstart/hostingstart.dll"]
    
  2. Aprire il riquadro comandi e digitare Immagini Docker: Compila immagine. Selezionare INVIO per eseguire il comando.

  3. Nella casella tag immagine specificare il tag desiderato nel formato seguente: <acr-name>.azurecr.io/<image-name>:<tag>, dove <acr-name> è il nome del registro contenitori creato. Selezionare INVIO.

  4. Al termine della compilazione dell'immagine, selezionare Aggiorna nella parte superiore di Images Explorer e verificare che l'immagine sia stata compilata correttamente.

    Screenshot che mostra l'immagine compilata con tag.

Eseguire la distribuzione nel registro contenitori

  1. Nella barra delle attività selezionare l'icona Docker . Nell’explorer IMMAGINI trovare l'immagine creata.

  2. Espandere l'immagine, fare clic con il pulsante destro del mouse sul tag desiderato e scegliere Esegui push.

  3. Assicurarsi che il tag immagine inizi con <acr-name>.azurecr.io e premere Invio.

  4. Al termine del push dell'immagine nel registro contenitori di Visual Studio Code, selezionare Aggiorna nella parte superiore dello strumento di esplorazione REGISTRIES e verificare che l'immagine venga inserita correttamente.

    Screenshot che mostra l'immagine distribuita nel Registro Azure Container.

Distribuire nel servizio app

  1. Nello strumento di esplorazione REGISTRIES espandere l'immagine, fare clic con il pulsante destro del mouse sul tag e selezionare Deploy Image to app Azure Service (Distribuisci immagine in app Azure servizio).
  2. Seguire le istruzioni per scegliere una sottoscrizione, un nome di app univoco a livello globale, un gruppo di risorse e un piano di Servizio app. Scegliere B1 Basic come piano tariffario e un'area nelle vicinanze.

Dopo la distribuzione, l'app è disponibile all'indirizzo http://<app-name>.azurewebsites.net.

Un gruppo di risorse è una raccolta denominata di tutte le risorse dell'applicazione in Azure. Può contenere ad esempio un riferimento a un sito Web, a un database e a una funzione di Azure.

Un piano di servizio app definisce le risorse fisiche da usare per ospitare il sito Web. Questa guida introduttiva usa un piano di hosting Basic nell'infrastruttura Linux , il che significa che il sito è ospitato in un computer Linux insieme ad altri siti Web. Se si inizia con il piano Basic, è possibile usare il portale di Azure per aumentare le prestazioni in modo che il proprio sia l'unico sito in esecuzione su un computer. Per i prezzi, vedere Prezzi del Servizio app.

Esplorazione del sito Web

Il pannello Output mostra lo stato delle operazioni di distribuzione. Al termine dell'operazione, selezionare Apri sito nella notifica popup per aprire il sito nel browser.

Pulire le risorse

Nei passaggi precedenti sono state create risorse di Azure in un gruppo di risorse. Se non si prevede di aver bisogno di queste risorse in futuro, è possibile eliminarle eliminando il gruppo di risorse.

Nel menu del portale di Azure o nella pagina Home selezionare Gruppi di risorse. Quindi, nella pagina Gruppi di risorse selezionare myResourceGroup.

Nella pagina myResourceGroup assicurarsi che le risorse elencate siano quelle da eliminare.

Selezionare Elimina gruppo di risorse, digitare myResourceGroup nella casella di testo per confermare e quindi selezionare Elimina.

L'argomento avvio rapido è stato completato.

L'app del Servizio app esegue il pull dal registro contenitori a ogni avvio. Se si ricompila l'immagine, è sufficiente eseguirne il push nel registro contenitori e l'app esegue il pull nell'immagine aggiornata al riavvio. Per indicare all'app di eseguire immediatamente il pull dell'immagine aggiornata, riavviarla.

Altre estensioni di Azure:

app Azure Servizio in Linux offre stack di applicazioni predefiniti in Linux con supporto per linguaggi come .NET, Java, Node.js e PHP. È anche possibile usare un'immagine Docker personalizzata per eseguire l'app Web in uno stack di applicazioni non ancora definito in Azure. Questo argomento di avvio rapido illustra come distribuire un'immagine da un Registro Azure Container al Servizio app di Azure.

Per altre informazioni sulle applicazioni in contenitori in un ambiente serverless, vedere App contenitore.

Prerequisiti

Clonare il repository di esempio:

Clonare l'app di esempio .NET 6.0 con il comando seguente:

git clone https://github.com/Azure-Samples/dotnetcore-docs-hello-world.git

Eseguire il push delle immagini in Registro Azure Container

Assicurarsi di trovarsi nella cartella radice del repository clonato. Questo repository contiene un file Dockerfile.linux.

  1. Accedere a Interfaccia della riga di comando di Azure.

    az login
    
  2. Accedere a Registro Azure Container.

    az acr login -n <your_registry_name>
    
  3. Compilare l'immagine del contenitore. Questo esempio usa il nome dell'immagine dotnetcore-docs-hello-world-linux.

    docker build -f Dockerfile.linux -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-linux . 
    
  4. Eseguire il push dell'immagine del contenitore in Registro Azure Container.

    docker push <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-linux:latest
    

    Nota

    Il Dockerfile imposta internamente il numero di porta su 80. Per altre informazioni sulla configurazione del contenitore, vedere Configurare un contenitore personalizzato.

Distribuzione in Azure

Accedere al portale di Azure

Accedere al portale di Azure.

Creazione di risorse Azure

  1. Digitare Servizi app nella casella dii ricerca. In Servizi, selezionare Servizi app.

    Screenshot della ricerca di 'servizi app' nel portale di Azure.

  2. Nella pagina Servizi app selezionare Crea>App Web.

  3. Nella scheda Informazioni di base, in Dettagli progetto, selezionare la sottoscrizione corretta. Selezionare il gruppo di risorse Crea nuovo. Per il nome digitare myResourceGroup.

    Screenshot della sezione Dettagli progetto che mostra dove selezionare la sottoscrizione di Azure e il gruppo di risorse per l'app Web.

  4. In Dettagli istanza:

    • Immettere un nome univoco globale per l'app Web.
    • Selezionare Contenitore.
    • Per Sistema operativo selezionare Linux.
    • Selezionare un'area da cui si vuole gestire l'app.

    Screenshot della sezione Dettagli istanza in cui si specifica un nome per la macchina virtuale e selezionarne l'area, l'immagine e le dimensioni.

  5. In Piano di servizio app selezionare l'opzione Crea nuovo per il piano di servizio app. Immettere myAppServicePlan come nome. Per passare al livello gratuito, selezionare Modifica dimensioni, selezionare la scheda Sviluppo/Test , selezionare F1. Selezionare Applica.

    Screenshot delle opzioni del piano di servizio app.

  6. Nella parte superiore della pagina selezionare la scheda Contenitore .

  7. Nella scheda Contenitore selezionare Registro Azure Container per Origine immagine. Nelle opzioni di Registro Azure Container impostare i valori seguenti:

    • Registro: selezionare Registro Azure Container.
    • Immagine: selezionare dotnetcore-docs-hello-world-linux.
    • Per Tag selezionare Più recente.

    Screenshot che mostra le opzioni di Registro Azure Container.

  8. Selezionare Rivedi e crea nella parte inferiore della pagina.

    Screenshot che mostra il pulsante Rivedi e crea nella parte inferiore della pagina.

  9. Dopo l'esecuzione della convalida, selezionare Crea.

  10. Al termine della distribuzione, selezionare Vai alla risorsa.

    Screenshot che mostra il passaggio successivo per andare alla risorsa.

Passare all'app

Passare all'applicazione distribuita nel Web browser all'URL http://<app-name>.azurewebsites.net.

Screenshot che mostra l'applicazione distribuita.

Pulire le risorse

Nei passaggi precedenti sono state create risorse di Azure in un gruppo di risorse. Se non si prevede di aver bisogno di queste risorse in futuro, è possibile eliminarle eliminando il gruppo di risorse.

Nel menu del portale di Azure o nella pagina Home selezionare Gruppi di risorse. Quindi, nella pagina Gruppi di risorse selezionare myResourceGroup.

Nella pagina myResourceGroup assicurarsi che le risorse elencate siano quelle da eliminare.

Selezionare Elimina gruppo di risorse, digitare myResourceGroup nella casella di testo per confermare e quindi selezionare Elimina.

L'argomento avvio rapido è stato completato.

L'app servizio app esegue il pull dal registro contenitori ogni volta che viene avviata. Se si ricompila l'immagine, è sufficiente eseguirne il push nel registro contenitori. L'app esegue il pull dell'immagine aggiornata al riavvio. Per indicare all'app di eseguire immediatamente il pull dell'immagine aggiornata, riavviarla.

app Azure Servizio fornisce stack di applicazioni predefiniti in Windows, ad esempio ASP.NET o Node.js, eseguiti in IIS. Gli stack di applicazioni preconfigurati bloccano il sistema operativo e impediscono l'accesso di basso livello. I contenitori di Windows personalizzati non hanno queste restrizioni. Consentono agli sviluppatori di personalizzare completamente i contenitori e concedere alle applicazioni in contenitori l'accesso completo alle funzionalità di Windows.

Questo avvio rapido illustra come distribuire un'app ASP.NET in un'immagine di Windows da Registro Azure Container al Servizio app di Azure.

Prerequisiti

Clonare il repository di esempio:

Clonare l'app di esempio .NET 6.0 con il comando seguente:

git clone https://github.com/Azure-Samples/dotnetcore-docs-hello-world.git

Eseguire il push delle immagini in Registro Azure Container

Assicurarsi di trovarsi nella cartella radice del repository clonato. Questo repository contiene un file Dockerfile.windows. Questo articolo usa Windows Nano Server Long Term Servicing Channel (LTSC) 2022 come sistema operativo di base, chiamando in modo esplicito la base di Windows.

Nota

Anche se questo contenitore è un contenitore Di Windows, i percorsi devono comunque usare barre. Per altre informazioni, vedere Scrivere un Dockerfile.

  1. Accedere a Interfaccia della riga di comando di Azure.

    az login
    
  2. Accedere a Registro Azure Container.

    az acr login -n <your_registry_name>
    
  3. Compilare l'immagine del contenitore. In questo esempio viene usato il nome dell'immagine dotnetcore-docs-hello-world-windows.

    docker build -f Dockerfile.windows -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-windows . 
    
  4. Eseguire il push dell'immagine del contenitore in Registro Azure Container.

    docker push <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-windows:latest
    

    Nota

    Il Dockerfile imposta internamente il numero di porta su 80. Per altre informazioni sulla configurazione del contenitore, vedere Configurare un contenitore personalizzato.

Distribuzione in Azure

Accedere al portale di Azure

Accedere al portale di Azure.

Creazione di risorse Azure

  1. Digitare Servizi app nella casella dii ricerca. In Servizi, selezionare Servizi app.

    Screenshot della ricerca di 'servizi app' nel portale di Azure.

  2. Nella pagina Servizi app selezionare Crea>App Web.

  3. Nella scheda Informazioni di base, in Dettagli progetto, selezionare la sottoscrizione corretta. Selezionare il gruppo di risorse Crea nuovo. Per il nome digitare myResourceGroup.

    Screenshot della sezione Dettagli progetto che mostra dove selezionare la sottoscrizione di Azure e il gruppo di risorse per l'app Web.

  4. In Dettagli istanza:

    • Immettere un nome univoco globale per l'app Web.
    • Selezionare Contenitore.
    • Per Sistema operativo selezionare Linux.
    • Selezionare un'area da cui si vuole gestire l'app.

    Screenshot della sezione Dettagli istanza in cui si specifica un nome per la macchina virtuale e selezionarne l'area, l'immagine e le dimensioni.

  5. In Piano di servizio app selezionare l'opzione Crea nuovo per il piano di servizio app. Immettere myAppServicePlan come nome. Per modificare il piano, selezionare Esplora piani tariffari, selezionare un piano e scegliere Seleziona nella parte inferiore della pagina.

    Screenshot delle opzioni del piano di servizio app.

  6. Nella parte superiore della pagina selezionare la scheda Contenitore .

  7. Nella scheda Contenitore selezionare Registro Azure Container per Origine immagine. Nelle opzioni di Registro Azure Container impostare i valori seguenti:

    • Registro: selezionare Registro Azure Container.
    • Immagine: selezionare dotnetcore-docs-hello-world-linux.
    • Per Tag selezionare Più recente.

    Screenshot che mostra le opzioni di Registro Azure Container.

  8. Selezionare Rivedi e crea nella parte inferiore della pagina.

    Screenshot che mostra il pulsante Rivedi e crea nella parte inferiore della pagina.

  9. Dopo l'esecuzione della convalida, selezionare Crea.

  10. Al termine della distribuzione, selezionare Vai alla risorsa.

    Screenshot che mostra il passaggio successivo per andare alla risorsa.

Passare all'app

Passare all'applicazione distribuita nel Web browser all'URL http://<app-name>.azurewebsites.net.

Screenshot di Windows servizio app con la messaggistica che i contenitori senza una porta esposta vengono eseguiti in modalità in background.

Il sistema operativo host viene visualizzato nel piè di pagina, che conferma che viene eseguito in un contenitore Windows.

Pulire le risorse

Nei passaggi precedenti sono state create risorse di Azure in un gruppo di risorse. Se non si prevede di aver bisogno di queste risorse in futuro, è possibile eliminarle eliminando il gruppo di risorse.

Nel menu del portale di Azure o nella pagina Home selezionare Gruppi di risorse. Quindi, nella pagina Gruppi di risorse selezionare myResourceGroup.

Nella pagina myResourceGroup assicurarsi che le risorse elencate siano quelle da eliminare.

Selezionare Elimina gruppo di risorse, digitare myResourceGroup nella casella di testo per confermare e quindi selezionare Elimina.

L'argomento avvio rapido è stato completato.

L'app servizio app esegue il pull dal registro contenitori ogni volta che viene avviata. Se si ricompila l'immagine, è sufficiente eseguirne il push nel registro contenitori. L'app esegue il pull dell'immagine aggiornata al riavvio. Per indicare all'app di eseguire immediatamente il pull dell'immagine aggiornata, riavviarla.

app Azure Servizio fornisce stack di applicazioni predefiniti in Windows, ad esempio ASP.NET o Node.js, eseguiti in IIS. Gli stack di applicazioni preconfigurati bloccano il sistema operativo e impediscono l'accesso di basso livello. I contenitori di Windows personalizzati non hanno queste restrizioni. Consentono agli sviluppatori di personalizzare completamente i contenitori e concedere alle applicazioni in contenitori l'accesso completo alle funzionalità di Windows.

Questo avvio rapido illustra come distribuire un'app ASP.NET in un'immagine di Windows dal Registro artefatti Microsoft al Servizio app di Azure.

Prerequisiti

Connect to Azure

Accedere all'account Azure usando il comando Connect-AzAccount e seguendo il prompt:

Connect-AzAccount

Creare un gruppo di risorse

Creare un gruppo di risorse con il comando New-AzResourceGroup. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite.

L'esempio seguente crea un gruppo di risorse denominato myResourceGroup nella località stati uniti orientali. Per visualizzare tutte le posizioni supportate per servizio app, eseguire il comando Get-AzLocation.

New-AzResourceGroup -Name myResourceGroup -Location eastus

Il comando restituisce Login Succeeded.

Creare il piano di servizio app

Creare un nuovo piano di servizio app usando il comando New-AzAppServicePlan.

L'esempio seguente crea un piano di Servizio app denominato myAppServicePlan nel piano tariffario PremiumV3 (-Tier PremiumV3). Il -HyperV parametro specifica il contenitore di Windows.

New-AzAppServicePlan -Name myAppServicePlan -Location eastus -ResourceGroupName myResourceGroup -Tier PremiumV3 -HyperV

Creare l'app Web

Creare una nuova app usando il comando New-AzWebApp:

New-AzWebApp -Name myWebApp -AppServicePlan myAppServicePlan -Location eastus -ResourceGroupName myResourceGroup -ContainerImageName mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
  • Il parametro Nome specifica il nome dell'app Web.
  • Il parametro AppServicePlan specifica il nome del piano di Servizio app.
  • Il parametro Posizione consente di specificare la posizione.
  • Il parametro ResourceGroupName specifica il nome del gruppo di risorse.
  • Il parametro ContainerImageName specifica un nome immagine contenitore e un tag facoltativo.

Il completamento del comando potrebbe richiedere alcuni minuti.

Passare all'app

Passare all'applicazione distribuita nel Web browser all'URL http://<app-name>.azurewebsites.net.

Screenshot di Windows servizio app con la messaggistica che i contenitori senza una porta esposta vengono eseguiti in modalità in background.

Pulire le risorse

Rimuovere il gruppo di risorse usando il comando Remove-AzResourceGroup:

Remove-AzResourceGroup myResourceGroup

L'argomento avvio rapido è stato completato.

L'app servizio app esegue il pull dal registro contenitori ogni volta che viene avviata. Se si ricompila l'immagine, è sufficiente eseguirne il push nel registro contenitori. L'app esegue il pull dell'immagine aggiornata al riavvio. Per indicare all'app di eseguire immediatamente il pull dell'immagine aggiornata, riavviarla.

app Azure Servizio fornisce stack di applicazioni predefiniti in Windows, ad esempio ASP.NET o Node.js, eseguiti in IIS. Gli stack di applicazioni preconfigurati bloccano il sistema operativo e impediscono l'accesso di basso livello. I contenitori di Windows personalizzati non hanno queste restrizioni. Consentono agli sviluppatori di personalizzare completamente i contenitori e concedere alle applicazioni in contenitori l'accesso completo alle funzionalità di Windows.

Questo avvio rapido illustra come distribuire un'app ASP.NET in un'immagine di Windows dal Registro artefatti Microsoft al Servizio app di Azure.

Prerequisiti

Connect to Azure

Accedere all'account Azure usando il comando az login e seguendo il prompt:

az login

Creare un gruppo di risorse

Creare un gruppo di risorse con il comando az group create. Un gruppo di risorse di Azure è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite.

L'esempio seguente crea un gruppo di risorse denominato myResourceGroup nella località stati uniti orientali. Per visualizzare tutte le posizioni supportate per servizio app, eseguire il comando az appservice list-locations.

az group create --name myResourceGroup --location eastus

Creare il piano di servizio app

Creare un piano di Servizio app nel gruppo di risorse con il comando az appservice plan create.

L'esempio seguente crea un piano di Servizio app denominato myAppServicePlan nel piano tariffario P1V3 (--sku P1V3).

az appservice plan create --resource-group myResourceGroup --location eastus --name myAppServicePlan --hyper-v --sku p1v3

Nota

Se si verifica l'errore, il comportamento di questo comando è stato modificato dall'estensione seguente: appservice-kube, rimuovere l'estensioneappservice-kube.

Creare l'app Web

Creare un'app Web con contenitore personalizzato nel piano di Servizio app myAppServicePlan con il comando az webapp create. Non dimenticare di sostituire myContainerApp con un nome univoco per l'app (i caratteri validi sono a-z, 0-9 e -).

az webapp create --name myContainerApp --plan myAppServicePlan --resource-group myResourceGroup --deployment-container-image-name mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
  • Il parametro Nome specifica il nome dell'app Web.
  • Il parametro AppServicePlan specifica il nome del piano di Servizio app.
  • Il parametro Posizione consente di specificare la posizione.
  • Il parametro ResourceGroupName specifica il nome del gruppo di risorse.
  • Il parametro deployment-container-image-name specifica un nome di immagine del contenitore e un tag facoltativo.

Passare all'app

Passare all'applicazione distribuita nel Web browser all'URL http://<app-name>.azurewebsites.net.

Screenshot di Windows servizio app con la messaggistica che i contenitori senza una porta esposta vengono eseguiti in modalità in background.

Pulire le risorse

Rimuovere il gruppo di risorse mediante il comando az group delete:

az group delete --no-wait --name <resource_group>

L'argomento avvio rapido è stato completato.

L'app servizio app esegue il pull dal registro contenitori ogni volta che viene avviata. Se si ricompila l'immagine, è sufficiente eseguirne il push nel registro contenitori. L'app esegue il pull dell'immagine aggiornata al riavvio. Per indicare all'app di eseguire immediatamente il pull dell'immagine aggiornata, riavviarla.