Köra en anpassad container i Azure

Azure App Service har fördefinierade programstackar i Windows som ASP.NET eller Node.js, som körs i IIS. De förkonfigurerade programstackarna låser dock operativsystemet och förhindrar åtkomst på låg nivå. Anpassade Windows-containrar har inte dessa begränsningar och gör det möjligt för utvecklare att helt anpassa containrarna och ge containerbaserade program fullständig åtkomst till Windows-funktioner.

Den här snabbstarten visar hur du distribuerar en ASP.NET app i en Windows-avbildning för att Azure Container Registry från Visual Studio. Du kör appen i en anpassad container i Azure App Service.

För att slutföra den här snabbstarten behöver du:

  • Installera Docker för Windows
  • Växla Docker för att köra Windows-containrar
  • Installera Visual Studio 2022 med arbetsbelastningarna ASP.NET och webbutveckling och Azure-utveckling . I Visual Studio 2022 Community ser du till att .NET Framework komponent för projekt- och objektmallar har valts med arbetsbelastningen ASP.NET och webbutveckling. Om du redan har installerat Visual Studio 2022:
    • Installera de senaste uppdateringarna i Visual Studio genom att välja Hjälp>sök efter Uppdateringar.
    • Lägg till arbetsbelastningarna i Visual Studio genom att välja Verktyg>Hämta verktyg och funktioner.

1 – Skapa en ASP.NET webbapp

Skapa en ASP.NET webbapp genom att följa dessa steg:

  1. Öppna Visual Studio och välj sedan Skapa ett nytt projekt.

  2. I Skapa ett nytt projekt letar du upp och väljer ASP.NET webbprogram (.NET Framework) för C# och väljer sedan Nästa.

    Skärmbild av dialogrutan Skapa ett nytt projekt.

  3. I Konfigurera det nya projektet, under Projektnamn, namnger du programmet myfirstazurewebapp. Under Ramverk väljer du .NET Framework 4.8 och sedan Skapa.

    Skärmbild av projektet Konfigurera din webbapp.

  4. Du kan distribuera alla typer av ASP.NET-webbappar till Azure. För den här snabbstarten väljer du MVC-mallen .

  5. Under Autentisering väljer du Ingen. Under Avancerat väljer du Docker-stöd och avmarkerar Konfigurera för HTTPS. Välj Skapa.

    Skärmbild av dialogrutan Skapa ASP.NET webbprogram.

  6. Om filen Dockerfile inte öppnas automatiskt öppnar du den från Solution Explorer.

  7. Du behöver en överordnad avbildning som stöds. Ändra den överordnade avbildningen genom att ersätta raden FROM med följande kod och spara filen:

    FROM mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
    
  8. På Visual Studio-menyn väljer du Felsöka>Starta utan felsökning för att köra webbappen lokalt.

    Skärmbild av appen som körs lokalt.

2 – Publicera till Azure Container Registry

  1. Högerklicka på projektet myfirstazurewebapp i Solution Explorer och välj Publicera.

  2. I Mål väljer du Docker Container Registry och sedan Nästa.

    Skärmbild av skärmen Välj Docker Container Registry.

  3. I Specifikt mål väljer du Azure Container Registry och sedan Nästa.

    Skärmbild av översiktssidan Publicera från projekt.

  4. I Publicera kontrollerar du att rätt prenumeration har valts. I Containerregister väljer du + knappen för att skapa en ny Azure Container Registry.

    Skärmbild av skärmen Skapa ny Azure Container Registry.

  5. I Skapa ny kontrollerar du att rätt prenumeration har valts. Under Resursgrupp väljer du Ny och skriver myResourceGroup som namn och väljer OK. Under SKU väljer du Grundläggande. Under Registerplats väljer du en plats för registret och väljer sedan Skapa.

    Skärmbild av Azure Container Registry information.

  6. I Publicera, under Container Registry, väljer du det register som du skapade och väljer sedan Slutför.

    Skärmbild av skärmen Välj befintlig Azure Container Registry.

    Vänta tills distributionen har slutförts. Sidan Publicera visar nu namnet på lagringsplatsen. Välj kopieringsknappen för att kopiera lagringsplatsens namn till senare.

    Skärmbild som visar namnet på lagringsplatsen.

3 – Skapa en anpassad Windows-container

  1. Logga in på Azure-portalen.

  2. Välj Skapa en resurs längst upp till vänster i Azure Portal.

  3. Under Populära tjänster väljer du Skapa under Webbapp.

  4. I Skapa webbapp väljer du din prenumeration och en resursgrupp. Du kan skapa en ny resursgrupp om det behövs.

  5. Ange ett appnamn, till exempel win-container-demo. Välj Docker-container för Publicera och Windows för operativsystem. Välj Nästa: Docker för att fortsätta.

    Skärmbild av Skapa en webbapp för containrar.

  6. För Bildkälla väljer du Docker Hub och för Bild och tagg anger du namnet på lagringsplatsen som du kopierade i Publicera till Azure Container Registry.

    Skärmbild av Konfigurera du är en Web App for Containers.

    Om du har en anpassad avbildning någon annanstans för ditt webbprogram, till exempel i Azure Container Registry eller på en annan privat lagringsplats, kan du konfigurera den här. Välj Granska + skapa för att fortsätta.

  7. Kontrollera all information och välj sedan Skapa och vänta tills Azure har skapat de resurser som krävs. Skärmbild av Skapa en webbapp för containrar.

4 – Bläddra till den anpassade containern

När Azure-åtgärden är klar visas ett meddelande.

Skärmbild av att distributionen lyckades.

  1. Klicka på Gå till resurs.

  2. I översikten över den här resursen följer du länken bredvid URL:en.

En ny webbläsarsida öppnas på följande sida:

Skärmbild av den anpassade Windows-containern som startar.

Vänta några minuter och försök igen, tills du kommer till standardvälkomstsidan för ASP.NET:

Skärmbild av en anpassad Windows-container som körs.

Grattis! Du kör din första anpassade Windows-container i Azure App Service.

5 – Se containerstartloggar

Det kan ta lite tid för Windows-containern att läsas in. Om du vill se förloppet går du till följande URL genom att <ersätta app_name> med namnet på din app.

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

De strömmade loggarna ser ut så här:

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

6 – Uppdatera lokalt och distribuera om

  1. Öppna Views>Home>Index.cshtml i Solution Explorer i Visual Studio.

  2. Leta reda på HTML-taggen <div class="jumbotron"> längst upp på sidan och ersätt hela elementet med följande kod:

    <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. Om du vill distribuera om till Azure högerklickar du på projektet myfirstazurewebapp i Solution Explorer och väljer Publicera.

  4. På publiceringssidan väljer du Publicera och väntar tills publiceringen ska slutföras.

  5. Om du vill uppmana App Service att hämta den nya avbildningen från Docker Hub startar du om appen. Gå tillbaka till appsidan i portalen och klicka på Starta om>Ja.

    Skärmbild av App Service Översikt med knappen Starta om markerad.

Bläddra till den anpassade containern igen. När du uppdaterar webbsidan ska appen återgå till sidan ”Startar” först och sedan visa den uppdaterade igen efter några minuter.

Skärmbild av den uppdaterade webbappen i Azure.

7 – Rensa resurser

I de föregående stegen skapade du Azure-resurser i en resursgrupp. Om du inte tror att du behöver dessa resurser i framtiden, kan du ta bort dem genom att ta bort resursgruppen.

På Azure Portal-menyn eller startsidan väljer du Resursgrupper. På sidan Resursgrupper väljer du sedan myResourceGroup.

På sidan myResourceGroup kontrollerar du att resurserna i listan är de som du vill ta bort.

Välj Ta bort resursgrupp, skriv myResourceGroup i textrutan för att bekräfta och välj sedan Ta bort.

Nästa steg

Azure App Service i Linux tillhandahåller fördefinierade programstackar i Linux med stöd för språk som .NET, PHP, Node.js och andra. Du kan också använda en anpassad Docker-avbildning för att köra webbappen på en programstack som inte redan har definierats i Azure. Den här snabbstarten visar hur du distribuerar en avbildning från en Azure Container Registry (ACR) till App Service.

Anteckning

Information om hur du kör containerbaserade program i en serverlös miljö finns i Container Apps.

För att slutföra den här snabbstarten behöver du:

1 – Skapa ett containerregister

I den här snabbstarten används Azure Container Registry som val av register. Du kan använda andra register, men stegen kan skilja sig något.

Skapa ett containerregister genom att följa anvisningarna i Snabbstart: Skapa ett privat containerregister med hjälp av Azure Portal.

Viktigt

Se till att ange alternativet Admin användare till Aktivera när du skapar Azure-containerregistret. Du kan också ange den från avsnittet Åtkomstnycklar på registersidan i Azure Portal. Den här inställningen krävs för App Service åtkomst. Information om hanterad identitet finns i självstudien Distribuera från ACR.

2 – Logga in

  1. Starta Visual Studio Code.

  2. Välj Azure-logotypen i aktivitetsfältet, navigera till APP SERVICE-utforskaren och välj sedan Logga in på Azure och följ instruktionerna.

    Skärmbild av att logga in på Azure i Visual Studio Code.

  3. I statusfältet längst ned kontrollerar du e-postadressen för ditt Azure-konto. Din prenumeration ska visas i APP SERVICE-utforskaren .

  4. I aktivitetsfältet väljer du Docker-logotypen . I REGISTRIES Explorer kontrollerar du att containerregistret som du skapade visas.

    Skärmbild som visar värdet register med Azure expanderat.

3 – Kontrollera kraven

Kontrollera att Du har Docker installerat och körs. Följande kommando visar Docker-versionen om den körs.

docker --version

4 – Skapa och skapa avbildning

  1. Öppna en tom mapp i Visual Studio Code och lägg till en fil med namnet Dockerfile. I Dockerfile klistrar du in innehållet baserat på önskat språkramverk:
FROM mcr.microsoft.com/appsvc/dotnetcore:lts

ENV PORT 8080
EXPOSE 8080

ENV ASPNETCORE_URLS "http://*:${PORT}"

ENTRYPOINT ["dotnet", "/defaulthome/hostingstart/hostingstart.dll"]

I den här Dockerfile-filen är den överordnade avbildningen en av de inbyggda .NET-containrarna i App Service. Du hittar källfilerna för dem på GitHub-lagringsplatsen Azure-App-Service/ImageBuilder under GenerateDockerFiles/dotnetcore. Dess Dockerfile kopierar en enkel .NET-app till /defaulthome/hostingstart. Dockerfile startar helt enkelt appen.

  1. Öppna kommandopaletten och skriv Docker-avbildningar: Skapa avbildning. Skriv Retur för att köra kommandot .

  2. I rutan avbildningstagg anger du den tagg som du vill använda i följande format: <acr-name>.azurecr.io/<image-name>/<tag>, där <acr-name> är namnet på det containerregister som du skapade. Tryck på Retur.

  3. När avbildningen har skapats klickar du på Uppdatera överst i IMAGES-utforskaren och kontrollerar att avbildningen har skapats.

    Skärmbild som visar den skapade avbildningen med taggen .

5 – Distribuera till containerregistret

  1. I aktivitetsfältet klickar du på Docker-ikonen . Leta reda på avbildningen du skapade i IMAGES Explorer.

  2. Expandera bilden, högerklicka på taggen du vill använda och klicka på Push(Push).

  3. Kontrollera att bildtaggen börjar med <acr-name>.azurecr.io och tryck på Retur.

  4. När Visual Studio Code har överfört avbildningen till containerregistret klickar du på Uppdatera överst i REGISTRIES-utforskaren och kontrollerar att avbildningen har push-överförts.

    Skärmbild som visar avbildningen som distribuerats till Azure-containerregistret.

6 – Distribuera till App Service

  1. I REGISTRIES Explorer expanderar du avbildningen, högerklickar på taggen och väljer Distribuera avbildning för att Azure App Service.
  2. Följ anvisningarna för att välja en prenumeration, ett globalt unikt appnamn, en resursgrupp och en App Service plan. Välj B1 Basic för prisnivån och en region nära dig.

Efter distributionen är din app tillgänglig på http://<app-name>.azurewebsites.net.

En resursgrupp är en namngiven samling av alla programresurser i Azure. En resursgrupp kan till exempel innehålla en referens till en webbplats, en databas och en Azure-funktion.

En App Service-plan definierar de fysiska resurser som ska användas som värd för din webbplats. Den här snabbstarten använder en grundläggande värdplan för Linux-infrastruktur , vilket innebär att platsen kommer att finnas på en Linux-dator tillsammans med andra webbplatser. Om du börjar med Basic-planen kan du använda Azure Portal för att skala upp så att din är den enda platsen som körs på en dator. Prissättning finns i App Service prissättning.

7 – Bläddra på webbplatsen

Panelen Utdata visar status för distributionsåtgärderna. När åtgärden har slutförts väljer du Öppna webbplats i popup-meddelandet för att öppna webbplatsen i webbläsaren.

8 – Rensa resurser

I de föregående stegen skapade du Azure-resurser i en resursgrupp. Om du inte tror att du behöver dessa resurser i framtiden, kan du ta bort dem genom att ta bort resursgruppen.

På menyn Azure Portal eller startsidan väljer du Resursgrupper. På sidan Resursgrupper väljer du sedan myResourceGroup.

På sidan myResourceGroup kontrollerar du att resurserna i listan är de som du vill ta bort.

Välj Ta bort resursgrupp, skriv myResourceGroup i textrutan för att bekräfta och välj sedan Ta bort.

Nästa steg

Grattis, du har slutfört den här snabbstarten.

Den App Service appen hämtar från containerregistret varje gång den startas. Om du återskapar avbildningen behöver du bara push-överföra den till containerregistret och appen hämtar den uppdaterade avbildningen när den startas om. Starta om den om du vill att appen ska hämta den uppdaterade avbildningen omedelbart.

Andra Azure-tillägg:

Azure App Service i Linux tillhandahåller fördefinierade programstackar i Linux med stöd för språk som .NET, PHP, Node.js och andra. Du kan också använda en anpassad Docker-avbildning för att köra webbappen på en programstack som inte redan har definierats i Azure. Den här snabbstarten visar hur du distribuerar en avbildning från Azure Container Registry till Azure App Service.

Anteckning

Information om hur du kör containerbaserade program i en serverlös miljö finns i Container Apps.

För att slutföra den här snabbstarten behöver du:

1 – Klona exempellagringsplatsen

Klona .NET 6.0-exempelappen med följande kommando:

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

2 – Skicka bilden till Azure Container Registry

Kontrollera att du är i den klonade lagringsplatsens rotmapp. Den här lagringsplatsen innehåller en Dockerfile.linux-fil .

  1. Logga in på Azure CLI.

    az login
    
  2. Logga in på Azure Container Registry.

    az acr login -n <your_registry_name>
    
  3. Skapa containeravbildningen. Vi namnger avbildningen dotnetcore-docs-hello-world-linux.

    docker build -f Dockerfile.linux -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-linux . 
    
  4. Push-överför containeravbildningen till Azure Container Registry.

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

    Anteckning

    Dockerfile anger portnumret till 80 internt. Mer information om hur du konfigurerar containern finns i Konfigurera anpassad container.

3 – Distribuera till Azure

Logga in på Azure-portalen

Logga in på Azure-portalen.

Skapa Azure-resurser

  1. Skriv apptjänster i sökningen. Under Tjänster väljer du App Services.

    Skärmbild av sökning efter

  2. På sidan App Services väljer du + Skapa.

  3. På fliken Grunder under Projektinformation kontrollerar du att rätt prenumeration har valts och väljer sedan Skapa ny resursgrupp. Skriv myResourceGroup som namn.

    Skärmbild av avsnittet Projektinformation som visar var du väljer Azure-prenumerationen och resursgruppen för webbappen.

  4. Under Instansinformation skriver du ett globalt unikt namn för webbappen och väljer Docker Container. Välj Linux för operativsystemet. Välj en region som du vill hantera din app från.

    Skärmbild av avsnittet Instansinformation där du anger ett namn för den virtuella datorn och väljer dess region, bild och storlek.

  5. Under App Service Plan väljer du Skapa ny App Service Plan. Ange myAppServicePlan som namn. Om du vill ändra till den kostnadsfria nivån väljer du Ändra storlek, väljer fliken Dev/Test , väljer F1 och väljer knappen Använd längst ned på sidan.

    Skärmbild av avsnittet Administratörskonto där du anger administratörens användarnamn och lösenord.

  6. Välj knappen Nästa: Docker > längst ned på sidan.

  7. På fliken Docker väljer du Enskild container under Alternativ och Azure Container Registry för avbildningskällan. Under Alternativ för Azure-containerregister anger du följande värden:

    • Register: Välj din Azure Container Registry.
    • Bild: Välj dotnetcore-docs-hello-world-linux.
    • Tagg: Välj senaste.

    Skärmbild som visar de Azure Container Registry alternativen.

  8. Välj knappen Granska + skapa längst ned på sidan.

    Skärmbild som visar knappen Granska och skapa längst ned på sidan.

  9. När verifieringen har körts väljer du knappen Skapa längst ned på sidan.

  10. När distributionen är klar väljer du Gå till resurs.

    Skärmbild som visar nästa steg för att gå till resursen.

4 – Bläddra till appen

Bläddra till det distribuerade programmet i webbläsaren på URL:en http://<app-name>.azurewebsites.net.

Skärmbild som visar den distribuerade appen.

5 – Rensa resurser

I de föregående stegen skapade du Azure-resurser i en resursgrupp. Om du inte tror att du behöver dessa resurser i framtiden, kan du ta bort dem genom att ta bort resursgruppen.

På menyn Azure Portal eller startsidan väljer du Resursgrupper. På sidan Resursgrupper väljer du sedan myResourceGroup.

På sidan myResourceGroup kontrollerar du att resurserna i listan är de som du vill ta bort.

Välj Ta bort resursgrupp, skriv myResourceGroup i textrutan för att bekräfta och välj sedan Ta bort.

Nästa steg

Grattis, du har slutfört den här snabbstarten.

Den App Service appen hämtar från containerregistret varje gång den startas. Om du återskapar avbildningen behöver du bara push-överföra den till containerregistret och appen hämtar den uppdaterade avbildningen när den startas om. Starta om den om du vill att appen ska hämta den uppdaterade avbildningen omedelbart.

Azure App Service har fördefinierade programstackar i Windows som ASP.NET eller Node.js, som körs i IIS. De förkonfigurerade programstackarna låser dock operativsystemet och förhindrar åtkomst på låg nivå. Anpassade Windows-containrar har inte dessa begränsningar och gör det möjligt för utvecklare att helt anpassa containrarna och ge containerbaserade program fullständig åtkomst till Windows-funktioner.

Den här snabbstarten visar hur du distribuerar en ASP.NET app i en Windows-avbildning från Azure Container Registry till Azure App Service.

För att slutföra den här snabbstarten behöver du:

1 – Klona exempellagringsplatsen

Klona .NET 6.0-exempelappen med följande kommando:

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

2 – Push-överför avbildningen till Azure Container Registry

Kontrollera att du är i den klonade lagringsplatsens rotmapp. Den här lagringsplatsen innehåller en Dockerfile.windows-fil . Vi kommer att använda Windows Nano Server Long Term Servicing Channel (LTSC) 2022 som basoperativsystem och uttryckligen anropa vår Windows-bas.

Anteckning

Även om det här är en Windows-container måste sökvägarna fortfarande använda snedstreck. Mer information finns i Skriva en Dockerfile .

  1. Logga in på Azure CLI.

    az login
    
  2. Logga in på Azure Container Registry.

    az acr login -n <your_registry_name>
    
  3. Skapa containeravbildningen. Vi namnger bilden dotnetcore-docs-hello-world-windows.

    docker build -f Dockerfile.windows -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-windows . 
    
  4. Push-överför containeravbildningen till Azure Container Registry.

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

    Anteckning

    Dockerfile anger portnumret till 80 internt. Mer information om hur du konfigurerar containern finns i Konfigurera anpassad container.

3 – Distribuera till Azure

Logga in på Azure-portalen

Logga in på Azure-portalen.

Skapa Azure-resurser

  1. Skriv apptjänster i sökningen. Under Tjänster väljer du App Services.

    Skärmbild av sökning efter

  2. På sidan App Services väljer du + Skapa.

  3. På fliken Grundläggande inställningar under Projektinformation kontrollerar du att rätt prenumeration har valts och väljer sedan Skapa ny resursgrupp. Skriv myResourceGroup som namn.

    Skärmbild av avsnittet Projektinformation som visar var du väljer Azure-prenumerationen och resursgruppen för webbappen.

  4. Under Instansinformation skriver du ett globalt unikt namn för webbappen och väljer Docker-container. Välj Windows som operativsystem. Välj en region som du vill hantera din app från.

    Skärmbild av avsnittet Instansinformation där du anger ett namn för den virtuella datorn och väljer dess region, avbildning och storlek.

  5. Under App Service Plan väljer du Skapa ny App Service plan. Skriv myAppServicePlan som namn. Om du vill ändra till den kostnadsfria nivån väljer du Ändra storlek, väljer fliken Dev/Test , väljer P1v3 och väljer knappen Tillämpa längst ned på sidan.

    Skärmbild av avsnittet Administratörskonto där du anger administratörens användarnamn och lösenord.

  6. Välj knappen Nästa: Docker > längst ned på sidan.

  7. På fliken Docker väljer du Azure Container Registry som avbildningskälla. Under Alternativ för Azure-containerregister anger du följande värden:

    • Register: Välj din Azure Container Registry.
    • Bild: Välj dotnetcore-docs-hello-world-windows.
    • Tagg: Välj senaste.

    Skärmbild som visar alternativen för Azure Container Registry.

  8. Välj knappen Granska + skapa längst ned på sidan.

    Skärmbild som visar knappen Granska och skapa längst ned på sidan.

  9. När verifieringen har körts väljer du knappen Skapa längst ned på sidan.

  10. När distributionen är klar väljer du Gå till resurs.

    Skärmbild som visar nästa steg i att gå till resursen.

4 – Bläddra till appen

Bläddra till det distribuerade programmet i webbläsaren på URL:en http://<app-name>.azurewebsites.net.

Skärmbild av Windows-App Service med meddelanden som containrar utan exponerad port kommer att köras i bakgrundsläge.

Observera att värdoperativsystemet visas i sidfoten och bekräftar att vi kör i en Windows-container.

5 – Rensa resurser

I de föregående stegen skapade du Azure-resurser i en resursgrupp. Om du inte tror att du behöver dessa resurser i framtiden, kan du ta bort dem genom att ta bort resursgruppen.

På Azure Portal-menyn eller startsidan väljer du Resursgrupper. På sidan Resursgrupper väljer du sedan myResourceGroup.

På sidan myResourceGroup kontrollerar du att resurserna i listan är de som du vill ta bort.

Välj Ta bort resursgrupp, skriv myResourceGroup i textrutan för att bekräfta och välj sedan Ta bort.

Nästa steg

Grattis, du har slutfört den här snabbstarten.

Den App Service appen hämtar från containerregistret varje gång den startas. Om du återskapar avbildningen behöver du bara push-överföra den till containerregistret och appen hämtar den uppdaterade avbildningen när den startas om. Om du vill att appen ska hämta den uppdaterade avbildningen omedelbart startar du om den.

Azure App Service har fördefinierade programstackar i Windows som ASP.NET eller Node.js, som körs i IIS. De förkonfigurerade programstackarna låser dock operativsystemet och förhindrar åtkomst på låg nivå. Anpassade Windows-containrar har inte dessa begränsningar och gör det möjligt för utvecklare att helt anpassa containrarna och ge containerbaserade program fullständig åtkomst till Windows-funktioner.

Den här snabbstarten visar hur du distribuerar en ASP.NET-app i en Windows-avbildning från Microsofts artefaktregister till Azure App Service.

För att slutföra den här snabbstarten behöver du:

1 – Ansluta till Azure

Logga in på ditt Azure-konto med kommandot Connect-AzAccount och följ anvisningarna:

Connect-AzAccount

2 – Skapa en resursgrupp

Skapa en resursgrupp med kommandot New-AzResourceGroup. En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.

I följande exempel skapas en resursgrupp med namnet myResourceGroup på platsen eastus. Om du vill se alla platser som stöds för App Service kör du kommandot Get-AzLocation.

New-AzResourceGroup -Name myResourceGroup -Location eastus

Kommandot returnerar Login Succeeded när det har slutförts.

3 – Skapa din App Service plan

Skapa en ny App Service-plan med kommandot New-AzAppServicePlan .

I följande exempel skapas en App Service plan med namnet myAppServicePlanprisnivån PremiumV3 (-Tier PremiumV3). Parametern -HyperV anger Windows-container.

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

4 – Skapa din webbapp

Skapa en ny app med kommandot New-AzWebApp :

New-AzWebApp -Name myWebApp -AppServicePlan myAppServicePlan -Location eastus -ResourceGroupName myResourceGroup -ContainerImageName mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
  • Parametern Namn anger webbappens namn.
  • Parametern AppServicePlan anger App Service plannamn.
  • Parametern Plats anger platsen.
  • Parametern ResourceGroupName anger namnet på resursgruppen.
  • Parametern ContainerImageName anger ett containeravbildningsnamn och en valfri tagg.

Det kan ta några minuter att slutföra kommandot.

5 – Bläddra till appen

Bläddra till det distribuerade programmet i webbläsaren på URL:en http://<app-name>.azurewebsites.net.

Skärmbild av Windows-App Service med meddelanden som containrar utan en port exponeras kommer att köras i bakgrundsläge.

6 – Rensa resurser

Ta bort resursgruppen med kommandot Remove-AzResourceGroup :

Remove-AzResourceGroup myResourceGroup

Nästa steg

Grattis, du har slutfört den här snabbstarten.

Den App Service appen hämtar från containerregistret varje gång den startas. Om du återskapar avbildningen behöver du bara push-överföra den till containerregistret och appen hämtar den uppdaterade avbildningen när den startas om. Starta om den om du vill att appen ska hämta den uppdaterade avbildningen omedelbart.

Azure App Service har fördefinierade programstackar i Windows som ASP.NET eller Node.js, som körs i IIS. De förkonfigurerade programstaplarna låser dock operativsystemet och förhindrar åtkomst på låg nivå. Anpassade Windows-containrar har inte dessa begränsningar och låter utvecklare anpassa containrarna fullständigt och ge containerbaserade program fullständig åtkomst till Windows-funktioner.

Den här snabbstarten visar hur du distribuerar en ASP.NET-app i en Windows-avbildning från Microsofts artefaktregister till Azure App Service.

För att slutföra den här snabbstarten behöver du:

1 – Ansluta till Azure

Logga in på ditt Azure-konto med hjälp az login av kommandot och följ kommandotolken:

az login

2 – Skapa en resursgrupp

Skapa en resursgrupp med kommandot az group create. En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.

I följande exempel skapas en resursgrupp med namnet myResourceGroup på platsen eastus. Om du vill se alla platser som stöds för App Service kör du kommandot az appservice list-locations.

az group create --name myResourceGroup --location eastus

3 – Skapa din App Service plan

Skapa en App Service plan i resursgruppen med az appservice plan create kommandot .

I följande exempel skapas en App Service plan med namnet myAppServicePlanprisnivån P1V3 (--sku P1V3).

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

Anteckning

Om du stöter på felet "Beteendet för det här kommandot har ändrats av följande tillägg: appservice-kube" tar du bort appservice-kube tillägget.

4 – Skapa din webbapp

Skapa en anpassad containerwebbapp i App Service-planen myAppServicePlan med kommandot az webapp create. Glöm inte att ersätta myContainerApp med ett unikt appnamn (giltiga tecken är a-z, 0-9och -).

az webapp create --name myContainerApp --plan myAppServicePlan --location eastus --resource-group myResourceGroup --deployment-container-image-name mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
  • Parametern Namn anger webbappens namn.
  • Parametern AppServicePlan anger App Service plannamn.
  • Parametern Plats anger platsen.
  • Parametern ResourceGroupName anger namnet på resursgruppen.
  • Parametern deployment-container-image-name anger ett containeravbildningsnamn och en valfri tagg.

5 – Bläddra till appen

Bläddra till det distribuerade programmet i webbläsaren på URL:en http://<app-name>.azurewebsites.net.

Skärmbild av Windows-App Service med meddelanden som containrar utan en port exponeras kommer att köras i bakgrundsläge.

6 – Rensa resurser

Ta bort resursgruppen med kommandot az group delete :

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

Nästa steg

Grattis, du har slutfört den här snabbstarten.

Den App Service appen hämtar från containerregistret varje gång den startas. Om du återskapar avbildningen behöver du bara push-överföra den till containerregistret och appen hämtar den uppdaterade avbildningen när den startas om. Starta om den om du vill att appen ska hämta den uppdaterade avbildningen omedelbart.