Szybki start: korzystanie z konfiguracji aplikacja systemu Azure w usłudze Azure Container Apps
W tym przewodniku Szybki start użyjesz aplikacja systemu Azure Configuration w aplikacji działającej w usłudze Azure Container Apps. Dzięki temu można scentralizować magazyn i zarządzać konfiguracją aplikacji w usłudze Container Apps. Ten przewodnik Szybki start korzysta z aplikacji ASP.NET Core utworzonej w przewodniku Szybki start: tworzenie aplikacji ASP.NET Core przy użyciu usługi App Configuration. Konteneryzujesz aplikację i wdrożysz ją w usłudze Azure Container Apps. Przed kontynuowaniem ukończ przewodnik Szybki start.
Napiwek
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
- Aplikacja korzystająca ze sklepu App Configuration. Jeśli go nie masz, utwórz wystąpienie przy użyciu przewodnika Szybki start: tworzenie aplikacji ASP.NET Core za pomocą usługi App Configuration.
- Wystąpienie usługi Azure Container Apps. Jeśli go nie masz, utwórz wystąpienie przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia.
- Docker Desktop
- Interfejs wiersza polecenia platformy Azure
Łączenie aplikacja systemu Azure Konfiguracji z aplikacją kontenera
W witrynie Azure Portal przejdź do wystąpienia aplikacji kontenera. Postępuj zgodnie z przewodnikiem Szybki start łącznika usług dla usługi Azure Container Apps , aby utworzyć połączenie usługi z magazynem App Configuration przy użyciu poniższych ustawień.
Na karcie Podstawy :
Na karcie Uwierzytelnianie:
- wybierz typ uwierzytelniania parametrów połączenia i tylko do odczytu dla opcji "Uprawnienia dla parametry połączenia
- rozwiń menu Zaawansowane. W informacjach o konfiguracji powinna istnieć już zmienna środowiskowa o nazwie "AZURE_APPCONFIGURATION_CONNECTIONSTRING". Edytuj zmienną środowiskową, wybierając ikonę po prawej stronie i zmieniając nazwę na ConnectionStrings__AppConfig. Musimy wprowadzić tę zmianę, ponieważ ConnectionStrings__AppConfig jest nazwą zmiennej środowiskowej, która będzie szukać aplikacji wbudowanej w przewodniku Szybki start ASP.NET Core. Jest to zmienna środowiskowa zawierająca parametry połączenia dla usługi App Configuration. Jeśli używasz innej aplikacji do korzystania z tego przewodnika Szybki start, użyj odpowiedniej nazwy zmiennej środowiskowej. Następnie wybierz Gotowe.
Użyj wartości domyślnych dla wszystkich innych elementów.
Po zakończeniu do kontenera aplikacji kontenera zostanie dodana zmienna środowiskowa o nazwie ConnectionStrings__AppConfig . Jego wartość jest odwołaniem do wpisu tajnego aplikacji kontenera, parametry połączenia magazynu App Configuration.
Tworzenie kontenera
Uruchom polecenie dotnet publish, aby skompilować aplikację w trybie wydania i utworzyć zasoby w opublikowanym folderze.
dotnet publish -c Release -o published
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"]
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.
- Aby utworzyć rejestr kontenerów, postępuj zgodnie z przewodnikiem Szybki start usługi Azure Container Registry.
- 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.
- Zanotuj wartość serwera logowania wymienioną na tej stronie. Te informacje będą używane w późniejszym kroku.
- 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.
Wypychanie obrazu do usługi Azure Container Registry
Wypchnij obraz platformy Docker do utworzonego wcześniej usługi ACR.
Uruchom polecenie az acr login, aby zalogować się do rejestru.
az acr login --name myregistry
Polecenie zwraca wartość
Login Succeeded
po pomyślnym zalogowaniu.Użyj tagu docker, 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
imyregistry.azurecr.io/aspnetapp
.Użyj polecenia docker push, aby wypchnąć obraz do rejestru kontenerów. W tym przykładzie utworzono repozytorium aspnetapp w usłudze ACR zawierające obraz
aspnetapp
. W poniższym przykładzie zastąp symbole<login-server
zastępcze i<tag>
<image-name>
wartością serwera logowania usługi ACR, nazwą obrazu i tagiem obrazu.Metoda:
docker push <login-server>/<image-name>:<tag>
Przykład:
docker push myregistry.azurecr.io/aspnetapp:v1
Otwórz usługę Azure Container Registry w witrynie Azure Portal i upewnij się, że w obszarze Repozytoria możesz zobaczyć nowe repozytorium.
Dodawanie obrazu kontenera do usługi Azure Container Apps
Zaktualizuj aplikację kontenera, aby załadować obraz kontenera z usługi ACR.
W witrynie Azure Portal otwórz wystąpienie usługi Azure Container Apps.
W menu po lewej stronie w obszarze Aplikacja wybierz pozycję Kontenery.
Wybierz pozycję Edytuj i wdróż.
W obszarze Obraz kontenera kliknij nazwę istniejącego obrazu kontenera.
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 utworzony wcześniej obraz platformy Docker i wypchnięty do usługi ACR. Tag obrazu Wersja 1 Wybierz tag obrazu z listy. 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:
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 nieprawidłowej grupy zasobów ani 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.
- Zaloguj się do witryny Azure Portal i wybierz pozycję Grupy zasobów.
- W polu Filtruj według nazwy wprowadź nazwę grupy zasobów.
- Na liście wyników wybierz nazwę grupy zasobów, aby wyświetlić przegląd.
- Wybierz pozycję Usuń grupę zasobów.
- Zobaczysz prośbę 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.
Następne kroki
W ramach tego przewodnika Szybki start wykonasz następujące czynności:
- Konfiguracja połączonej aplikacja systemu 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 wystąpienie usługi Azure Container Registry
- Wypchnięty obraz do wystąpienia usługi Azure Container Registry
- Dodano obraz kontenera do usługi Azure Container Apps
- Przejdź do adresu URL wystąpienia usługi Azure Container Apps zaktualizowanego przy użyciu ustawień skonfigurowanych w magazynie App Configuration.
Tożsamość zarządzana umożliwia jednemu zasobowi platformy Azure uzyskiwanie dostępu do innego bez obsługi wpisów tajnych. 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.