Udostępnij za pośrednictwem


Krótki przewodnik: Korzystanie z Konfiguracji aplikacji Azure w usłudze Azure Container Apps

W tym Szybkim starcie użyjesz Azure App Configuration w aplikacji uruchomionej w Azure Container Apps. Dzięki temu można scentralizować przechowywanie i zarządzanie konfiguracją aplikacji w usłudze Container Apps. Ten przewodnik szybkiego startu wykorzystuje aplikację ASP.NET Core utworzoną w ramach przewodnika szybkiego startu: tworzenie aplikacji ASP.NET Core przy użyciu usługi App Configuration. Konteneryzujesz aplikację i wdrażasz ją w usłudze Azure Container Apps. Przed kontynuowaniem ukończ szybki start.

Wskazówka

Wykonując czynności opisane w tym przewodniku Szybki start, najlepiej zarejestrować wszystkie nowe zasoby w ramach jednej grupy zasobów, aby można było ponownie je przegrupować w jednym miejscu i usunąć je szybciej później, jeśli nie będą już potrzebne.

Wymagania wstępne


Połącz usługę Azure App Configuration z aplikacją kontenera

  1. W portalu Azure przejdź do wystąpienia aplikacji kontenerowej.

  2. Postępuj zgodnie z Szybkim startem łącznika usług w Azure Container Apps, aby utworzyć połączenie z usługą dla sklepu App Configuration, używając następujących ustawień.

    1. Na karcie Podstawy :

      • W obszarze Typ usługi wybierz pozycję Konfiguracja aplikacji

      • W obszarze Konfiguracja aplikacji wybierz sklep App Configuration.

        Zrzut ekranu platformy Azure, pokazujący formularz w menu Łącznik usługi w aplikacji typu kontener.

    2. Na karcie Uwierzytelnianie:

      • Wybierz typ uwierzytelniania tożsamości zarządzanej przypisanej przez system
      • Rozwiń menu Zaawansowane
      • Przypisz swojej tożsamości rolę Czytelnik danych konfiguracji aplikacji
      • W obszarze Informacje o konfiguracji znajduje się zmienna środowiskowa o nazwie AZURE_APPCONFIGURATION_ENDPOINT. Wybierz ikonę ołówka po prawej stronie i zmodyfikuj nazwę zmiennej środowiskowej, aby dopasować nazwę zmiennej w aplikacji, z której jest ładowany punkt końcowy usługi App Configuration. Jeśli aplikacja została skompilowana zgodnie z przewodnikiem Szybki start ASP.NET Core, nazwa zmiennej to Endpoints:AppConfiguration. Podczas edytowania nazwy zmiennej zastąp dwukropek podwójnymi podkreśleniami, aby stał się Endpoints__AppConfiguration. Jeśli pracujesz z inną aplikacją, wprowadź odpowiednią nazwę zmiennej środowiskowej, a następnie wybierz pozycję Gotowe.
    3. Użyj wartości domyślnych dla wszystkich innych elementów.

    Po utworzeniu połączenia zmienna środowiskowa o nazwie Endpoints__AppConfiguration zostanie dodana do kontenera zasobu aplikacji kontenera. Jego wartość to odniesienie do tajnego klucza aplikacji kontenera oraz punkt końcowy sklepu App Configuration.

Tworzenie kontenera

  1. Uruchom polecenie dotnet publish, aby skompilować aplikację w trybie wydania i utworzyć zasoby w folderze "published" .

    dotnet publish -c Release -o published
    
  2. Utwórz plik o nazwie Dockerfile w katalogu zawierającym plik csproj, otwórz go w edytorze tekstów i wprowadź następującą zawartość. Plik Dockerfile to plik tekstowy, który nie ma rozszerzenia i służy do tworzenia obrazu kontenera.

    FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
    WORKDIR /app
    COPY published/ ./
    ENTRYPOINT ["dotnet", "TestAppConfig.dll"]
    
  3. Skompiluj kontener, uruchamiając następujące polecenie.

    docker build --tag aspnetapp .
    

Utworzenie wystąpienia usługi Azure Container Registry

Tworzenie rejestru Azure Container Registry (ACR). Usługa ACR umożliwia tworzenie i przechowywanie obrazów kontenerów oraz zarządzanie nimi.

  1. Aby utworzyć rejestr kontenerów, postępuj zgodnie z przewodnikiem Szybki start usługi Azure Container Registry.
  2. Po zakończeniu wdrażania otwórz wystąpienie usługi ACR, a następnie z menu po lewej stronie wybierz pozycję Ustawienia > Klucze dostępu.
  3. Zanotuj wartość serwera logowania wymienioną na tej stronie. Te informacje będą używane w późniejszym kroku.
  4. Przełącz użytkownika administratora na włączone. Ta opcja umożliwia połączenie usługi ACR z usługą Azure Container Apps przy użyciu poświadczeń użytkownika administratora. Alternatywnie możesz pozostawić ją wyłączoną i skonfigurować aplikację kontenera do ściągania obrazów z rejestru przy użyciu tożsamości zarządzanej.

Wypchnij obraz do usługi Azure Container Registry

Wypchnij obraz Dockera do utworzonego wcześniej ACR.

  1. Uruchom polecenie az acr login, aby zalogować się do rejestru.

    az acr login --name myregistry
    

    Polecenie zwraca wartość Login Succeeded po pomyślnym zalogowaniu.

  2. Użyj docker tag, aby oznaczyć obraz odpowiednimi szczegółami.

    docker tag aspnetapp myregistry.azurecr.io/aspnetapp:v1
    

    Napiwek

    Aby przejrzeć listę istniejących obrazów i tagów platformy Docker, uruchom polecenie docker image ls. W tym scenariuszu powinny zostać wyświetlone co najmniej dwa obrazy: aspnetapp i myregistry.azurecr.io/aspnetapp.

  3. Użyj polecenia docker push, aby przekazać obraz do rejestru kontenerów. W tym przykładzie utworzono repozytorium aspnetapp w ACR, które zawiera obraz aspnetapp. W poniższym przykładzie zastąp symbole <login-server, <image-name> i <tag> wartością serwera logowania ACR, nazwą obrazu i tagiem obrazu.

    Metoda:

    docker push <login-server>/<image-name>:<tag>
    

    Przykład:

    docker push myregistry.azurecr.io/aspnetapp:v1
    
  4. Otwórz usługę Azure Container Registry w witrynie Azure Portal i upewnij się, że w obszarze Repozytoria możesz zobaczyć nowe repozytorium.

    Zrzut ekranu platformy Azure przedstawiający repozytorium w rejestrach kontenerów platformy Azure.

Dodawanie obrazu kontenera do usługi Azure Container Apps

Zaktualizuj aplikację kontenerową, aby załadować obraz kontenera z usługi Azure Container Registry (ACR).

  1. W portalu Azure otwórz wystąpienie Azure Container Apps.

  2. W menu po lewej stronie w obszarze Aplikacja wybierz pozycję Kontenery.

  3. Wybierz pozycję Edytuj i wdróż.

  4. W obszarze Obraz kontenera kliknij nazwę istniejącego obrazu kontenera.

  5. Zaktualizuj następujące ustawienia:

    Ustawienie Sugerowana wartość opis
    Źródło obrazu Azure Container Registry Wybierz usługę Azure Container Registry jako źródło obrazu.
    Uwierzytelnianie Poświadczenia administratora Użyj opcji poświadczeń użytkownika administratora, która została włączona wcześniej w rejestrze kontenerów. Jeśli użytkownik administracyjny nie został włączony, ale skonfigurowany do używania tożsamości zarządzanej, musisz ręcznie wprowadzić obraz i tag w formularzu.
    Rejestr myregistry.azurecr.io Wybierz utworzoną wcześniej usługę Azure Container Registry.
    Obraz aspnetapp Wybierz obraz Docker, który utworzyłeś wcześniej i wypchnąłeś do usługi ACR.
    Etykieta obrazu Wersja 1 Wybierz tag obrazu z listy.
  6. Wybierz pozycję Zapisz , a następnie pozycję Utwórz , aby wdrożyć aktualizację w aplikacji kontenera platformy Azure.

Przejdź do adresu URL aplikacji kontenera platformy Azure

W witrynie Azure Portal w wystąpieniu usługi Azure Container Apps przejdź do karty Przegląd i otwórz adres URL aplikacji.

Strona internetowa wygląda następująco:

Zrzut ekranu przedstawiający przeglądarkę internetową z uruchomioną aplikacją.

Czyszczenie zasobów

Jeśli nie chcesz nadal korzystać z zasobów utworzonych w tym artykule, usuń utworzoną tutaj grupę zasobów, aby uniknąć naliczania opłat.

Ważne

Usunięcie grupy zasobów jest nieodwracalne. Grupa zasobów i wszystkie zasoby w niej są trwale usuwane. Upewnij się, że nie usuniesz przypadkowo niewłaściwej grupy zasobów lub zasobów. Jeśli zasoby dla tego artykułu zostały utworzone w grupie zasobów zawierającej inne zasoby, które chcesz zachować, usuń każdy zasób oddzielnie z odpowiedniego okienka zamiast usuwać grupę zasobów.

  1. Zaloguj się do witryny Azure Portal i wybierz pozycję Grupy zasobów.
  2. W polu Filtruj według nazwy wprowadź nazwę grupy zasobów.
  3. Na liście wyników wybierz nazwę grupy zasobów, aby wyświetlić przegląd.
  4. Wybierz pozycję Usuń grupę zasobów.
  5. Poprosi się Ciebie o potwierdzenie usunięcia grupy zasobów. Wprowadź nazwę grupy zasobów, aby potwierdzić, a następnie wybierz pozycję Usuń.

Po kilku chwilach grupa zasobów i wszystkie jej zasoby zostaną usunięte.

W ramach tego przewodnika Szybki start wykonasz następujące czynności:

  • Połączona konfiguracja aplikacji Azure z usługą Azure Container Apps
  • Użyto platformy Docker do utworzenia obrazu kontenera z aplikacji ASP.NET Core przy użyciu ustawień usługi App Configuration
  • Utworzono instancję usługi Azure Container Registry
  • Przesłano obraz do instancji Azure Container Registry
  • Dodano obraz kontenera do usługi Azure Container Apps
  • Odwiedź adres URL wystąpienia usługi Azure Container Apps, zaktualizowanego przy użyciu ustawień, które skonfigurowano w magazynie App Configuration.

Tożsamość zarządzana umożliwia jednemu zasobowi platformy Azure dostęp do innego bez konieczności zarządzania hasłami. Możesz usprawnić dostęp z usługi Container Apps do innych zasobów platformy Azure. Aby uzyskać więcej informacji, zobacz jak uzyskać dostęp do usługi App Configuration przy użyciu tożsamości zarządzanej i jak uzyskać dostęp do usługi Container Registry przy użyciu tożsamości zarządzanej.

Aby dowiedzieć się, jak skonfigurować aplikację internetową ASP.NET Core w celu dynamicznego odświeżania ustawień konfiguracji, przejdź do następnego samouczka.