Udostępnij za pośrednictwem


Szybki start: uruchamianie niestandardowego kontenera na platformie Azure

usługa aplikacja systemu Azure udostępnia wstępnie zdefiniowane stosy aplikacji w systemie Windows, takie jak ASP.NET lub Node.js, które działają w usługach IIS. Wstępnie skonfigurowane stosy aplikacji blokują system operacyjny i uniemożliwiają dostęp niskiego poziomu. Niestandardowe kontenery systemu Windows nie mają tych ograniczeń. Pozwalają deweloperom w pełni dostosować kontenery i zapewnić konteneryzowanym aplikacjom pełny dostęp do funkcji systemu Windows.

W tym przewodniku Szybki start pokazano, jak wdrożyć aplikację ASP.NET w obrazie systemu Windows w usłudze Azure Container Registry z poziomu programu Visual Studio. Aplikacja jest uruchamiana w kontenerze niestandardowym w usłudze aplikacja systemu Azure Service.

Wymagania wstępne

tworzenie aplikacji internetowej platformy ASP.NET

Utwórz aplikację internetową ASP.NET, wykonując następujące kroki:

  1. Otwórz program Visual Studio, a następnie wybierz pozycję Utwórz nowy projekt.

  2. W obszarze Utwórz nowy projekt wybierz pozycję ASP.NET aplikacja internetowa (.NET Framework) dla języka C#, a następnie wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający okno dialogowe Tworzenie nowego projektu.

  3. W obszarze Konfigurowanie nowego projektu w obszarze Nazwa projektu nadaj aplikacji nazwę myfirstazurewebapp. W obszarze Framework wybierz pozycję .NET Framework 4.8, a następnie wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający projekt Konfigurowanie aplikacji internetowej.

  4. Na platformie Azure można wdrożyć dowolny typ aplikacji internetowej platformy ASP.NET. Na potrzeby tego przewodnika Szybki start wybierz szablon MVC .

  5. W obszarze Uwierzytelnianie wybierz pozycję Brak. W obszarze Zaawansowane wybierz pozycję Obsługa kontenera i usuń zaznaczenie pola wyboru Konfiguruj dla protokołu HTTPS. Wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający okno dialogowe Tworzenie aplikacji internetowej ASP.NET.

  6. Jeśli plik Dockerfile nie zostanie automatycznie otwarty, otwórz go w Eksploratorze rozwiązań.

  7. Potrzebujesz obsługiwanego obrazu nadrzędnego. Zmień obraz nadrzędny, zastępując wiersz FROM następującym kodem i zapisując plik:

    FROM mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
    
  8. Z menu programu Visual Studio wybierz pozycję Debuguj>rozpocznij bez debugowania, aby uruchomić aplikację internetową lokalnie.

    Zrzut ekranu przedstawiający aplikację uruchomioną lokalnie.

Publikowanie w usłudze Azure Container Registry

  1. W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt myfirstazurewebapp i wybierz polecenie Publikuj.

  2. W obszarze Cel wybierz pozycję Docker Container Registry, a następnie wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający ekran Select Docker Container Registry (Wybieranie rejestru kontenerów platformy Docker).

  3. W obszarze Określony element docelowy wybierz pozycję Azure Container Registry, a następnie wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający stronę przeglądu publikowania z projektu.

  4. W obszarze Publikowanie wybierz poprawną subskrypcję. W obszarze Rejestry kontenerów wybierz pozycję Utwórz nowy , aby utworzyć nowy rejestr kontenerów platformy Azure.

    Zrzut ekranu przedstawiający ekran Tworzenie nowego rejestru kontenerów platformy Azure.

  5. W obszarze Utwórz nową wybierz poprawną subskrypcję. W obszarze Grupa zasobów wybierz pozycję Nowy i wpisz nazwę myResourceGroup , a następnie wybierz przycisk OK. W obszarze JEDNOSTKA SKU wybierz pozycję Podstawowa. W obszarze Lokalizacja rejestru wybierz lokalizację rejestru, a następnie wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający szczegóły usługi Azure Container Registry.

  6. W obszarze Publikowanie w obszarze Container Registry wybierz utworzony rejestr, a następnie wybierz pozycję Zakończ.

    Zrzut ekranu Przedstawiający ekran Wybieranie istniejącej usługi Azure Container Registry.

    Zaczekaj na zakończenie wdrażania. Na stronie Publikowanie jest teraz wyświetlana nazwa repozytorium. Wybierz przycisk kopiowania, aby skopiować nazwę repozytorium do późniejszego użycia.

    Zrzut ekranu z wyróżnioną nazwą repozytorium.

Tworzenie niestandardowego kontenera systemu Windows

  1. Zaloguj się w witrynie Azure Portal.

  2. W lewym górnym rogu okna witryny Azure Portal wybierz pozycję Utwórz zasób.

  3. W obszarze Popularne usługi wybierz pozycję Utwórz w obszarze Aplikacja internetowa.

  4. W obszarze Tworzenie aplikacji internetowej wybierz subskrypcję i grupę zasobów. W razie potrzeby możesz utworzyć nową grupę zasobów.

  5. Podaj nazwę aplikacji, taką jak win-container-demo. W obszarze Publikuj wybierz pozycję Kontener. W polu System operacyjny wybierz pozycję Windows.

    Zrzut ekranu przedstawiający tworzenie aplikacji internetowej dla kontenerów.

  6. Wybierz pozycję Dalej: Baza danych, a następnie Dalej: Kontener , aby kontynuować.

  7. W polu Źródło obrazu wybierz pozycję Docker Hub, a w polu Obraz i tag wprowadź nazwę repozytorium skopiowaną w obszarze Publikowanie w usłudze Azure Container Registry.

    Zrzut ekranu przedstawiający konfigurowanie aplikacji internetowej dla kontenerów.

    Jeśli masz obraz niestandardowy dla aplikacji internetowej w innym miejscu, na przykład w usłudze Azure Container Registry lub w innym prywatnym repozytorium, możesz skonfigurować go tutaj. Wybierz pozycję Przejrzyj i utwórz , aby kontynuować.

  8. Sprawdź wszystkie szczegóły, a następnie wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający tworzenie aplikacji internetowej dla kontenerów.

    Poczekaj, aż platforma Azure utworzy wymagane zasoby.

Przejdź do kontenera niestandardowego

Po zakończeniu operacji w witrynie Azure Portal zostanie wyświetlone powiadomienie.

Zrzut ekranu przedstawiający pomyślne wdrożenie.

  1. Wybierz pozycję Przejdź do zasobu.

  2. W przeglądzie tego zasobu kliknij link obok pozycji Domena domyślna.

Zostanie otwarta nowa strona przeglądarki na następującej stronie:

Zrzut ekranu przedstawiający uruchamianie niestandardowego kontenera systemu Windows.

Poczekaj kilka minut i spróbuj ponownie, dopóki nie zostanie wyświetlona domyślna strona główna aplikacji ASP.NET:

Zrzut ekranu przedstawiający uruchomiony kontener niestandardowy systemu Windows.

Gratulacje! Uruchamiasz swój pierwszy niestandardowy kontener systemu Windows w usłudze Azure App Service.

Wyświetlanie dzienników uruchamiania kontenera

Załadowanie kontenera systemu Windows może zająć trochę czasu. Aby wyświetlić postęp, przejdź do następującego adresu URL, zastępując <app_name> nazwą aplikacji.

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

Przesyłane strumieniowo dzienniki wyglądają następująco:

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

Lokalne aktualizowanie i ponowne wdrażanie

  1. W programie Visual Studio w Eksplorator rozwiązań otwórz plik Views>Home>Index.cshtml.

  2. Znajdź tag HTML <div class="jumbotron"> u góry i zastąp cały element następującym kodem:

    <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. Aby ponownie wdrożyć na platformie Azure, kliknij prawym przyciskiem myszy projekt myfirstazurewebapp w Eksplorator rozwiązań i wybierz polecenie Publikuj.

  4. Na stronie publikowania wybierz pozycję Publikuj i poczekaj na ukończenie procesu publikowania.

  5. Aby nakazać usłudze App Service ściągnięcie obrazu z usługi Docker Hub, uruchom ponownie aplikację. Na stronie aplikacji w witrynie Azure Portal wybierz pozycję Uruchom ponownie>tak.

    Zrzut ekranu przedstawiający przegląd usługi App Service z wyróżnionym przyciskiem Uruchom ponownie.

Przejdź ponownie do kontenera niestandardowego. Podczas odświeżania strony internetowej aplikacja powinna najpierw powrócić do strony "Uruchamianie", a następnie wyświetlić zaktualizowaną stronę internetową.

Zrzut ekranu przedstawiający zaktualizowaną aplikację internetową na platformie Azure.

Czyszczenie zasobów

W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.

W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Grupy zasobów. Następnie na stronie Grupy zasobów wybierz pozycję myResourceGroup.

Na stronie myResourceGroup upewnij się, że wymienione zasoby są tymi, które chcesz usunąć.

Wybierz pozycję Usuń grupę zasobów, wpisz myResourceGroup w polu tekstowym, aby potwierdzić, a następnie wybierz pozycję Usuń.

usługa aplikacja systemu Azure w systemie Linux udostępnia wstępnie zdefiniowane stosy aplikacji w systemie Linux z obsługą języków takich jak .NET, Java, Node.js i PHP. Możesz również użyć niestandardowego obrazu platformy Docker, aby uruchomić aplikację internetową na stosie aplikacji, który nie jest jeszcze zdefiniowany na platformie Azure. W tym przewodniku Szybki start pokazano, jak wdrożyć obraz z usługi Azure Container Registry (ACR) w usłudze App Service.

Aby uzyskać więcej informacji na temat konteneryzowanych aplikacji w środowisku bezserwerowym, zobacz Container Apps.

Wymagania wstępne

Tworzenie rejestru kontenerów

Ten przewodnik Szybki start używa usługi Azure Container Registry jako rejestru. Możesz użyć innych rejestrów, ale kroki mogą się nieco różnić.

Utwórz rejestr kontenerów, postępując zgodnie z instrukcjami w przewodniku Szybki start: tworzenie prywatnego rejestru kontenerów przy użyciu witryny Azure Portal.

Ważne

Pamiętaj, aby ustawić opcję Użytkownik administracyjny na Wartość Włącz podczas tworzenia rejestru kontenerów platformy Azure. Można ją również ustawić w sekcji Klucze dostępu strony rejestru w witrynie Azure Portal. To ustawienie jest wymagane dla dostępu do usługi App Service. Aby uzyskać informacje o tożsamości zarządzanej, zobacz Wdrażanie z samouczka usługi ACR.

Zaloguj

  1. Uruchom program Visual Studio Code.

  2. Wybierz logo platformy Azure na pasku działań, przejdź do pozycji KONTA i DZIERŻAWY. Wybierz pozycję Zaloguj się do platformy Azure i postępuj zgodnie z instrukcjami.

    Zrzut ekranu przedstawiający logowanie się do platformy Azure w programie Visual Studio Code.

  3. Na pasku stanu u dołu sprawdź swój adres e-mail konta platformy Azure. W Eksploratorze usługi APP SERVICE twoja subskrypcja powinna być wyświetlana.

  4. Na pasku działań wybierz logo platformy Docker . W eksploratorze REGISTRIES sprawdź, czy zostanie wyświetlony utworzony rejestr kontenerów.

    Zrzut ekranu przedstawia wartość Rejestry z rozwiniętym platformą Azure.

Sprawdzanie wymagań wstępnych

Sprawdź, czy platforma Docker jest zainstalowana i uruchomiona. Następujące polecenie wyświetla wersję platformy Docker, jeśli jest uruchomiona.

docker --version

Tworzenie i kompilowanie obrazu

  1. W programie Visual Studio Code otwórz pusty folder i dodaj plik o nazwie Dockerfile. W pliku Dockerfile wklej zawartość na podstawie żądanej struktury językowej:

    W tym pliku Dockerfile obraz nadrzędny jest jednym z wbudowanych kontenerów platformy .NET usługi App Service.

    FROM mcr.microsoft.com/appsvc/dotnetcore:lts
    
    ENV PORT 8080
    EXPOSE 8080
    
    ENV ASPNETCORE_URLS "http://*:${PORT}"
    
    ENTRYPOINT ["dotnet", "/defaulthome/hostingstart/hostingstart.dll"]
    
  2. Otwórz paletę poleceń i wpisz Docker Images: Build Image (Obrazy platformy Docker: Kompiluj obraz). Wybierz Enter, aby uruchomić polecenie.

  3. W polu tagu obrazu określ żądany tag w następującym formacie: <acr-name>.azurecr.io/<image-name>:<tag>, gdzie <acr-name> jest nazwą utworzonego rejestru kontenerów. Wybierz Enter.

  4. Po zakończeniu kompilowania obrazu wybierz pozycję Odśwież w górnej części eksploratora IMAGES i sprawdź, czy obraz został skompilowany pomyślnie.

    Zrzut ekranu przedstawia utworzony obraz z tagiem.

Wdrażanie w rejestrze kontenerów

  1. Na pasku działań wybierz ikonę Platformy Docker . W eksploratorze IMAGES znajdź utworzony obraz.

  2. Rozwiń obraz, kliknij prawym przyciskiem myszy odpowiedni tag i wybierz polecenie Wypchnij.

  3. Upewnij się, że tag obrazu zaczyna się od <acr-name>.azurecr.io i naciśnij Enter.

  4. Gdy program Visual Studio Code zakończy wypychanie obrazu do rejestru kontenerów, wybierz pozycję Odśwież w górnej części eksploratora REGISTRIES i sprawdź, czy obraz został wypchnięty pomyślnie.

    Zrzut ekranu przedstawia obraz wdrożony w rejestrze kontenerów platformy Azure.

Wdrażanie do usługi App Service

  1. W eksploratorze REGISTRIES rozwiń obraz, kliknij prawym przyciskiem myszy tag, a następnie wybierz polecenie Wdróż obraz w usłudze aplikacja systemu Azure.
  2. Postępuj zgodnie z monitami, aby wybrać subskrypcję, globalnie unikatową nazwę aplikacji, grupę zasobów i plan usługi App Service. Wybierz pozycję B1 Podstawowa dla warstwy cenowej i regionu w pobliżu.

Po wdrożeniu aplikacja jest dostępna pod adresem http://<app-name>.azurewebsites.net.

Grupa zasobów to nazwana kolekcja wszystkich zasobów aplikacji na platformie Azure. Na przykład grupa zasobów może zawierać odwołanie do witryny internetowej, bazy danych i funkcji platformy Azure.

Plan usługi App Service definiuje zasoby fizyczne, które mają być używane do hostowania witryny internetowej. W tym przewodniku Szybki start jest używany podstawowy plan hostingu w infrastrukturze systemu Linux , co oznacza, że witryna jest hostowana na maszynie z systemem Linux obok innych witryn internetowych. Jeśli zaczniesz od planu podstawowego, możesz użyć witryny Azure Portal do skalowania w górę, aby twoja witryna jest jedyną witryną uruchomioną na maszynie. Aby uzyskać informacje o cenach, zobacz Cennik usługi App Service.

Przeglądanie witryny internetowej

Na panelu Dane wyjściowe jest wyświetlany stan operacji wdrażania. Po zakończeniu operacji wybierz pozycję Otwórz witrynę w wyskakującym powiadomieniu, aby otworzyć witrynę w przeglądarce.

Czyszczenie zasobów

W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.

W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Grupy zasobów. Następnie na stronie Grupy zasobów wybierz pozycję myResourceGroup.

Na stronie myResourceGroup upewnij się, że wymienione zasoby są tymi, które chcesz usunąć.

Wybierz pozycję Usuń grupę zasobów, wpisz myResourceGroup w polu tekstowym, aby potwierdzić, a następnie wybierz pozycję Usuń.

Gratulacje. Pomyślnie ukończono ten przewodnik Szybki start.

Aplikacja usługi App Service pobiera z rejestru kontenerów za każdym razem, gdy jest uruchamiana. Jeśli ponownie skompilujesz obraz, wystarczy wypchnąć go do rejestru kontenerów, a aplikacja ściąga zaktualizowany obraz po ponownym uruchomieniu. Aby poinformować aplikację o natychmiastowym ściągnięciu zaktualizowanego obrazu, uruchom go ponownie.

Inne rozszerzenia platformy Azure:

usługa aplikacja systemu Azure w systemie Linux udostępnia wstępnie zdefiniowane stosy aplikacji w systemie Linux z obsługą języków takich jak .NET, Java, Node.js i PHP. Możesz również użyć niestandardowego obrazu platformy Docker, aby uruchomić aplikację internetową na stosie aplikacji, który nie jest jeszcze zdefiniowany na platformie Azure. W tym przewodniku Szybki start pokazano, jak wdrożyć obraz z usługi Azure Container Registry w usłudze aplikacja systemu Azure Service.

Aby uzyskać więcej informacji na temat konteneryzowanych aplikacji w środowisku bezserwerowym, zobacz Container Apps.

Wymagania wstępne

Klonowanie przykładowego repozytorium

Sklonuj przykładową aplikację platformy .NET 6.0 za pomocą następującego polecenia:

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

Wypychanie obrazu do usługi Azure Container Registry

Upewnij się, że znajdujesz się w folderze głównym sklonowanego repozytorium. To repozytorium zawiera plik Dockerfile.linux .

  1. Zaloguj się do interfejsu wiersza polecenia platformy Azure.

    az login
    
  2. Zaloguj się do usługi Azure Container Registry.

    az acr login -n <your_registry_name>
    
  3. Skompiluj obraz kontenera. W tym przykładzie użyto nazwy obrazu dotnetcore-docs-hello-world-linux.

    docker build -f Dockerfile.linux -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-linux . 
    
  4. Wypchnij obraz kontenera do usługi Azure Container Registry.

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

    Uwaga

    Plik Dockerfile ustawia numer portu na 80 wewnętrznie. Aby uzyskać więcej informacji na temat konfigurowania kontenera, zobacz Konfigurowanie kontenera niestandardowego.

Wdróż na platformie Azure

Logowanie do witryny Azure Portal

Zaloguj się w witrynie Azure Portal.

Tworzenie zasobów platformy Azure

  1. Wpisz usługi app services w wyszukiwaniu. W obszarze Usługi wybierz pozycję App Services.

    Zrzut ekranu przedstawiający wyszukiwanie

  2. Na stronie App Services wybierz pozycję Utwórz>aplikację internetową.

  3. Na karcie Podstawy w obszarze Szczegóły projektu wybierz poprawną subskrypcję. Wybierz pozycję Utwórz nową grupę zasobów. Wpisz nazwę myResourceGroup.

    Zrzut ekranu przedstawiający sekcję Szczegóły projektu z wybraną subskrypcją platformy Azure i grupą zasobów dla aplikacji internetowej.

  4. W obszarze Szczegóły wystąpienia:

    • Wprowadź globalnie unikatową nazwę aplikacji internetowej.
    • Wybierz pozycję Kontener.
    • W polu System operacyjny wybierz pozycję Linux.
    • Wybierz region, z którego chcesz obsługiwać aplikację.

    Zrzut ekranu przedstawiający sekcję Szczegóły wystąpienia, w której podano nazwę maszyny wirtualnej i wybierz jej region, obraz i rozmiar.

  5. W obszarze Plan usługi App Service wybierz pozycję Utwórz nowy plan usługi App Service. Wprowadź nazwę myAppServicePlan . Aby przejść do warstwy Bezpłatna, wybierz pozycję Zmień rozmiar, wybierz kartę Tworzenie i testowanie , wybierz pozycję F1. Wybierz Zastosuj.

    Zrzut ekranu przedstawiający opcje planu usługi App Service.

  6. W górnej części strony wybierz kartę Kontener .

  7. Na karcie Kontener w polu Źródło obrazu wybierz pozycję Azure Container Registry. W obszarze Opcje rejestru kontenerów platformy Azure ustaw następujące wartości:

    • Rejestr: wybierz usługę Azure Container Registry.
    • Obraz: Wybierz pozycję dotnetcore-docs-hello-world-linux.
    • Tag: wybierz pozycję Latest (Najnowsza wersja).

    Zrzut ekranu przedstawiający opcje usługi Azure Container Registry.

  8. Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.

    Zrzut ekranu przedstawiający przycisk Przejrzyj i utwórz w dolnej części strony.

  9. Po uruchomieniu walidacji wybierz pozycję Utwórz.

  10. Po zakończeniu wdrożenia wybierz pozycję Przejdź do zasobu.

    Zrzut ekranu przedstawiający następny krok przechodzenia do zasobu.

Przechodzenie do aplikacji

Przejdź do wdrożonej aplikacji w przeglądarce internetowej pod adresem URL http://<app-name>.azurewebsites.net.

Zrzut ekranu przedstawiający wdrożoną aplikację.

Czyszczenie zasobów

W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.

W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Grupy zasobów. Następnie na stronie Grupy zasobów wybierz pozycję myResourceGroup.

Na stronie myResourceGroup upewnij się, że wymienione zasoby są tymi, które chcesz usunąć.

Wybierz pozycję Usuń grupę zasobów, wpisz myResourceGroup w polu tekstowym, aby potwierdzić, a następnie wybierz pozycję Usuń.

Gratulacje. Pomyślnie ukończono ten przewodnik Szybki start.

Aplikacja usługi App Service pobiera z rejestru kontenerów za każdym razem, gdy jest uruchamiana. Jeśli ponownie skompilujesz obraz, po prostu wypchnij go do rejestru kontenerów. Aplikacja pobiera zaktualizowany obraz po ponownym uruchomieniu. Aby poinformować aplikację o natychmiastowym ściągnięciu zaktualizowanego obrazu, uruchom go ponownie.

usługa aplikacja systemu Azure udostępnia wstępnie zdefiniowane stosy aplikacji w systemie Windows, takie jak ASP.NET lub Node.js, które działają w usługach IIS. Wstępnie skonfigurowane stosy aplikacji blokują system operacyjny i uniemożliwiają dostęp niskiego poziomu. Niestandardowe kontenery systemu Windows nie mają tych ograniczeń. Pozwalają deweloperom w pełni dostosować kontenery i zapewnić konteneryzowanym aplikacjom pełny dostęp do funkcji systemu Windows.

W tym przewodniku Szybki start pokazano, jak wdrożyć aplikację ASP.NET w obrazie systemu Windows z usługi Azure Container Registry w usłudze aplikacja systemu Azure Service.

Wymagania wstępne

Klonowanie przykładowego repozytorium

Sklonuj przykładową aplikację platformy .NET 6.0 za pomocą następującego polecenia:

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

Wypychanie obrazu do usługi Azure Container Registry

Upewnij się, że znajdujesz się w folderze głównym sklonowanego repozytorium. To repozytorium zawiera plik Dockerfile.windows . W tym artykule użyto długoterminowego kanału obsługi systemu Windows Nano Server (LTSC) 2022 jako podstawowego systemu operacyjnego, jawnie nazywając naszą bazę systemu Windows.

Uwaga

Mimo że ten kontener jest kontenerem systemu Windows, ścieżki nadal muszą używać ukośników. Aby uzyskać więcej informacji, zobacz Write a Dockerfile (Pisanie pliku Dockerfile).

  1. Zaloguj się do interfejsu wiersza polecenia platformy Azure.

    az login
    
  2. Zaloguj się do usługi Azure Container Registry.

    az acr login -n <your_registry_name>
    
  3. Skompiluj obraz kontenera. W tym przykładzie użyto nazwy obrazu dotnetcore-docs-hello-world-windows.

    docker build -f Dockerfile.windows -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-windows . 
    
  4. Wypchnij obraz kontenera do usługi Azure Container Registry.

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

    Uwaga

    Plik Dockerfile ustawia numer portu na 80 wewnętrznie. Aby uzyskać więcej informacji na temat konfigurowania kontenera, zobacz Konfigurowanie kontenera niestandardowego.

Wdróż na platformie Azure

Logowanie do witryny Azure Portal

Zaloguj się w witrynie Azure Portal.

Tworzenie zasobów platformy Azure

  1. Wpisz usługi app services w wyszukiwaniu. W obszarze Usługi wybierz pozycję App Services.

    Zrzut ekranu przedstawiający wyszukiwanie

  2. Na stronie App Services wybierz pozycję Utwórz>aplikację internetową.

  3. Na karcie Podstawy w obszarze Szczegóły projektu wybierz poprawną subskrypcję. Wybierz pozycję Utwórz nową grupę zasobów. Wpisz nazwę myResourceGroup.

    Zrzut ekranu przedstawiający sekcję Szczegóły projektu z wybraną subskrypcją platformy Azure i grupą zasobów dla aplikacji internetowej.

  4. W obszarze Szczegóły wystąpienia:

    • Wprowadź globalnie unikatową nazwę aplikacji internetowej.
    • Wybierz pozycję Kontener.
    • W polu System operacyjny wybierz pozycję Linux.
    • Wybierz region, z którego chcesz obsługiwać aplikację.

    Zrzut ekranu przedstawiający sekcję Szczegóły wystąpienia, w której podano nazwę maszyny wirtualnej i wybierz jej region, obraz i rozmiar.

  5. W obszarze Plan usługi App Service wybierz pozycję Utwórz nowy plan usługi App Service. Wprowadź nazwę myAppServicePlan . Aby zmienić warstwę, wybierz pozycję Eksploruj plany cenowe, wybierz plan, a następnie wybierz pozycję Wybierz w dolnej części strony.

    Zrzut ekranu przedstawiający opcje planu usługi App Service.

  6. W górnej części strony wybierz kartę Kontener .

  7. Na karcie Kontener w polu Źródło obrazu wybierz pozycję Azure Container Registry . W obszarze Opcje rejestru kontenerów platformy Azure ustaw następujące wartości:

    • Rejestr: wybierz usługę Azure Container Registry.
    • Obraz: Wybierz pozycję dotnetcore-docs-hello-world-linux.
    • Tag: wybierz pozycję Latest (Najnowsza wersja).

    Zrzut ekranu przedstawiający opcje usługi Azure Container Registry.

  8. Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.

    Zrzut ekranu przedstawiający przycisk Przejrzyj i utwórz w dolnej części strony.

  9. Po uruchomieniu walidacji wybierz pozycję Utwórz.

  10. Po zakończeniu wdrożenia wybierz pozycję Przejdź do zasobu.

    Zrzut ekranu przedstawiający następny krok przechodzenia do zasobu.

Przechodzenie do aplikacji

Przejdź do wdrożonej aplikacji w przeglądarce internetowej pod adresem URL http://<app-name>.azurewebsites.net.

Zrzut ekranu usługi App Service systemu Windows z obsługą komunikatów, które kontenery bez uwidocznionego portu działają w trybie w tle.

W stopce zostanie wyświetlony system operacyjny Host, który potwierdza, że działa w kontenerze systemu Windows.

Czyszczenie zasobów

W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.

W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Grupy zasobów. Następnie na stronie Grupy zasobów wybierz pozycję myResourceGroup.

Na stronie myResourceGroup upewnij się, że wymienione zasoby są tymi, które chcesz usunąć.

Wybierz pozycję Usuń grupę zasobów, wpisz myResourceGroup w polu tekstowym, aby potwierdzić, a następnie wybierz pozycję Usuń.

Gratulacje. Pomyślnie ukończono ten przewodnik Szybki start.

Aplikacja usługi App Service pobiera z rejestru kontenerów za każdym razem, gdy jest uruchamiana. Jeśli ponownie skompilujesz obraz, po prostu wypchnij go do rejestru kontenerów. Aplikacja pobiera zaktualizowany obraz po ponownym uruchomieniu. Aby poinformować aplikację o natychmiastowym ściągnięciu zaktualizowanego obrazu, uruchom go ponownie.

usługa aplikacja systemu Azure udostępnia wstępnie zdefiniowane stosy aplikacji w systemie Windows, takie jak ASP.NET lub Node.js, które działają w usługach IIS. Wstępnie skonfigurowane stosy aplikacji blokują system operacyjny i uniemożliwiają dostęp niskiego poziomu. Niestandardowe kontenery systemu Windows nie mają tych ograniczeń. Pozwalają deweloperom w pełni dostosować kontenery i zapewnić konteneryzowanym aplikacjom pełny dostęp do funkcji systemu Windows.

W tym przewodniku Szybki start pokazano, jak wdrożyć aplikację ASP.NET na obrazie systemu Windows z Rejestr Artefaktów Microsoft do usługi aplikacja systemu Azure.

Wymagania wstępne

Łączenie się z platformą Azure

Zaloguj się do konta platformy Azure przy użyciu polecenia Connect-AzAccount i wykonaj następujące polecenie:

Connect-AzAccount

Tworzenie grupy zasobów

Utwórz grupę zasobów za pomocą polecenia New-AzResourceGroup. Grupa zasobów platformy Azure to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi.

W poniższym przykładzie tworzona jest grupa zasobów o nazwie myResourceGroup w lokalizacji eastus. Aby wyświetlić wszystkie obsługiwane lokalizacje dla usługi App Service, uruchom polecenie Get-AzLocation .

New-AzResourceGroup -Name myResourceGroup -Location eastus

Polecenie zwraca wartość Login Succeeded.

Tworzenie planu usługi App Service

Utwórz nowy plan usługi App Service przy użyciu polecenia New-AzAppServicePlan .

Poniższy przykład tworzy plan usługi App Service o nazwie myAppServicePlan w warstwie cenowej PremiumV3 (-Tier PremiumV3). Parametr -HyperV określa kontener systemu Windows.

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

Tworzenie aplikacji internetowej

Utwórz nową aplikację przy użyciu polecenia New-AzWebApp :

New-AzWebApp -Name myWebApp -AppServicePlan myAppServicePlan -Location eastus -ResourceGroupName myResourceGroup -ContainerImageName mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
  • Parametr Name określa nazwę aplikacji internetowej.
  • Parametr AppServicePlan określa nazwę planu usługi App Service.
  • Parametr Location określa lokalizację.
  • Parametr ResourceGroupName określa nazwę grupy zasobów.
  • Parametr ContainerImageName określa nazwę obrazu kontenera i opcjonalny tag.

Wykonanie polecenia może potrwać kilka minut.

Przechodzenie do aplikacji

Przejdź do wdrożonej aplikacji w przeglądarce internetowej pod adresem URL http://<app-name>.azurewebsites.net.

Zrzut ekranu usługi App Service systemu Windows z obsługą komunikatów, które kontenery bez uwidocznionego portu działają w trybie w tle.

Czyszczenie zasobów

Usuń grupę zasobów za pomocą polecenia Remove-AzResourceGroup :

Remove-AzResourceGroup myResourceGroup

Gratulacje. Pomyślnie ukończono ten przewodnik Szybki start.

Aplikacja usługi App Service pobiera z rejestru kontenerów za każdym razem, gdy jest uruchamiana. Jeśli ponownie skompilujesz obraz, po prostu wypchnij go do rejestru kontenerów. Aplikacja pobiera zaktualizowany obraz po ponownym uruchomieniu. Aby poinformować aplikację o natychmiastowym ściągnięciu zaktualizowanego obrazu, uruchom go ponownie.

usługa aplikacja systemu Azure udostępnia wstępnie zdefiniowane stosy aplikacji w systemie Windows, takie jak ASP.NET lub Node.js, które działają w usługach IIS. Wstępnie skonfigurowane stosy aplikacji blokują system operacyjny i uniemożliwiają dostęp niskiego poziomu. Niestandardowe kontenery systemu Windows nie mają tych ograniczeń. Pozwalają deweloperom w pełni dostosować kontenery i zapewnić konteneryzowanym aplikacjom pełny dostęp do funkcji systemu Windows.

W tym przewodniku Szybki start pokazano, jak wdrożyć aplikację ASP.NET na obrazie systemu Windows z Rejestr Artefaktów Microsoft do usługi aplikacja systemu Azure.

Wymagania wstępne

Łączenie się z platformą Azure

Zaloguj się do konta platformy Azure przy użyciu polecenia az login i wykonaj następujące czynności:

az login

Tworzenie grupy zasobów

Utwórz grupę zasobów za pomocą polecenia az group create. Grupa zasobów platformy Azure to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi.

W poniższym przykładzie tworzona jest grupa zasobów o nazwie myResourceGroup w lokalizacji eastus. Aby wyświetlić wszystkie obsługiwane lokalizacje dla usługi App Service, uruchom polecenie az appservice list-locations .

az group create --name myResourceGroup --location eastus

Tworzenie planu usługi App Service

Utwórz plan usługi App Service w grupie zasobów za az appservice plan create pomocą polecenia .

Poniższy przykład tworzy plan usługi App Service o nazwie myAppServicePlan w warstwie cenowej P1V3 (--sku P1V3).

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

Uwaga

Jeśli wystąpi błąd, zachowanie tego polecenia zostało zmienione przez następujące rozszerzenie: appservice-kube, usuń appservice-kube rozszerzenie.

Tworzenie aplikacji internetowej

Utwórz niestandardową aplikację internetową kontenera w myAppServicePlan planie usługi App Service za pomocą polecenia az webapp create. Nie zapomnij zastąpić myContainerApp unikatową nazwą aplikacji (prawidłowe znaki to a-z, 0-9i -).

az webapp create --name myContainerApp --plan myAppServicePlan --resource-group myResourceGroup --deployment-container-image-name mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
  • Parametr Name określa nazwę aplikacji internetowej.
  • Parametr AppServicePlan określa nazwę planu usługi App Service.
  • Parametr Location określa lokalizację.
  • Parametr ResourceGroupName określa nazwę grupy zasobów.
  • Parametr deployment-container-image-name określa nazwę obrazu kontenera i opcjonalny tag.

Przechodzenie do aplikacji

Przejdź do wdrożonej aplikacji w przeglądarce internetowej pod adresem URL http://<app-name>.azurewebsites.net.

Zrzut ekranu usługi App Service systemu Windows z obsługą komunikatów, które kontenery bez uwidocznionego portu działają w trybie w tle.

Czyszczenie zasobów

Usuń grupę zasobów przy użyciu polecenia az group delete :

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

Gratulacje. Pomyślnie ukończono ten przewodnik Szybki start.

Aplikacja usługi App Service pobiera z rejestru kontenerów za każdym razem, gdy jest uruchamiana. Jeśli ponownie skompilujesz obraz, po prostu wypchnij go do rejestru kontenerów. Aplikacja pobiera zaktualizowany obraz po ponownym uruchomieniu. Aby poinformować aplikację o natychmiastowym ściągnięciu zaktualizowanego obrazu, uruchom go ponownie.