Ćwiczenie — Wdrażanie obrazu platformy Docker w wystąpieniu kontenera platformy Azure

Ukończone

Wystąpienie kontenera platformy Azure umożliwia uruchamianie obrazu platformy Docker na platformie Azure.

W poprzednim ćwiczeniu spakowano i przetestowano aplikację internetową jako lokalny obraz platformy Docker. Teraz chcesz użyć danych wyjściowych tego ćwiczenia i udostępnić aplikację internetową globalnie. Aby osiągnąć tę dostępność, możesz uruchomić obraz jako wystąpienie kontenera platformy Azure.

W tym ćwiczeniu dowiesz się, jak ponownie skompilować obraz dla aplikacji internetowej i przekazać go do usługi Azure Container Registry. Do uruchomienia obrazu użyjesz usługi wystąpienia kontenera platformy Azure.

Ważne

Do wykonania tego ćwiczenia potrzebna jest własna subskrypcja platformy Azure. Ponadto mogą zostać naliczone opłaty. Jeśli nie masz jeszcze subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Tworzenie rejestru kontenerów

  1. Zaloguj się w witrynie Azure Portal przy użyciu subskrypcji platformy Azure.

  2. W menu zasobów lub na stronie głównej wybierz pozycję Utwórz zasób. Zostanie wyświetlone okienko Tworzenie zasobu .

  3. W menu wybierz pozycję Kontenery, a następnie wybierz pozycję Rejestr kontenerów.

    Zrzut ekranu przedstawiający tworzenie zasobu za pomocą usługi Container Registry.

    Zostanie wyświetlone okienko Tworzenie rejestru kontenerów.

  4. Na karcie Podstawy wprowadź następujące wartości dla każdego ustawienia.

    Ustawienie Wartość
    Szczegóły projektu
    Subskrypcja Wybierz subskrypcję platformy Azure, w której możesz tworzyć zasoby i zarządzać nimi.
    Grupa zasobów Wybierz pozycję Utwórz nową grupę zasobów o nazwie learn-deploy-container-aci-rg. Zapamiętaj wybraną nazwę; Będziesz go używać w pozostałych ćwiczeniach w tym module. Pamiętaj również, aby wyczyścić ten zasób po zakończeniu pracy z modułem.
    Szczegóły wystąpienia
    Nazwa rejestru Wybierz wybraną nazwę. Nazwa rejestru musi być unikatowa w obrębie platformy Azure i może zawierać od 5 do 50 znaków alfanumerycznych.
    Lokalizacja Wybierz lokalizację znajdującą się blisko Ciebie.
    Korzystanie ze stref dostępności Zaakceptuj domyślną wartość.
    Plan cenowy Standardowa
  5. Wybierz pozycję Przejrzyj i utwórz. Po wyświetleniu powiadomienia Weryfikacja przekazana wybierz pozycję Utwórz. Przed kontynuowaniem poczekaj, aż rejestr kontenerów zostanie wdrożony.

  6. Wybierz pozycję Przejdź do zasobu. W okienku Rejestr kontenerów są wyświetlane podstawowe informacje o rejestrze kontenerów.

  7. W menu zasobów w obszarze Ustawienia wybierz pozycję Klucze dostępu. Zostanie wyświetlone okienko Klucze dostępu dla rejestru kontenerów.

  8. Jeśli ustawienie Użytkownika administratora jest wyłączone, zaznacz pole wyboru obok klucza dostępu administratora. Nazwa użytkownika i hasła są wyświetlane dla rejestru kontenerów.

  9. Zanotuj nazwę rejestru, serwer logowania, nazwę użytkownika i hasła dla rejestru kontenerów.

    Uwaga

    W tym ćwiczeniu włączymy dostęp do konta administratora, aby umożliwić przekazywanie obrazów i testowanie rejestru. W środowisku produkcyjnym ważne jest, aby wyłączyć dostęp do konta użytkownika administratora i używać Ochrona tożsamości Microsoft Entra zaraz po spełnieniu oczekiwań, że rejestr działa zgodnie z oczekiwaniami.

    Zrzut ekranu przedstawiający szczegóły kluczy dostępu.

Przekazywanie obrazu aplikacji obsługującej system rezerwacji hotelowych do usługi Azure Container Registry

  1. W lokalnym wierszu polecenia uruchom następujące polecenie, zastępując <registry-name> ciąg nazwą rejestru kontenerów, aby oznaczyć bieżący reservationsystem obraz nazwą rejestru:

    docker tag reservationsystem:latest <registry-name>.azurecr.io/reservationsystem:latest
    
  2. Uruchom polecenie , docker image ls aby sprawdzić, czy obraz został poprawnie otagowany:

    docker image ls
    

    Powinny zostać wyświetlone dane wyjściowe podobne do poniższych:

    REPOSITORY                                    TAG                 IMAGE ID            CREATED             SIZE
    reservationsystem                             latest              a56281e7038f        4 minutes ago       1.76GB
    <registry-name>.azurecr.io/reservationsystem  latest              a56281e7038f        4 minutes ago       1.76GB
    
  3. W wierszu polecenia zaloguj się do usługi Azure Container Registry. Za pomocą polecenia docker login podaj wcześniej zanotowaną wartość serwera logowania dla rejestru. Wprowadź nazwę użytkownika i hasło z kluczy dostępu po wyświetleniu monitu.

    docker login <login-server>
    

    Uwaga

    Może zostać wyświetlony komunikat o błędzie z demona, którego aplikacja nie jest zarejestrowana w usłudze Microsoft Entra ID. Jak wspomniano wcześniej w tym ćwiczeniu, włączono klucz dostępu administratora w celu przetestowania wdrożenia.

  4. Wprowadź następujące polecenie, zastępując <registry-name> ciąg własną nazwą rejestru, aby przekazać obraz do rejestru w usłudze Azure Container Registry:

    docker push <registry-name>.azurecr.io/reservationsystem:latest
    

    Poczekaj na zakończenie przekazywania. Ten proces potrwa kilka minut, aby wypchnąć wszystkie obiekty obrazu do repozytorium. Postęp każdego obiektu można obserwować z oczekiwaniem na przygotowanie do wypchnięcia do wypchnięcia.

Weryfikowanie zawartości rejestru

W pozostałej części ćwiczenia wrócisz do witryny Azure Portal.

  1. W witrynie Azure Portal wróć do rejestru kontenerów.

  2. W menu zasobów w obszarze Usługi wybierz pozycję Repozytoria. Zostanie wyświetlone okienko Repozytoria dla rejestru kontenerów.

  3. Upewnij się, że widać repozytorium reservationsystem. Wybierz repozytorium reservationsystem i sprawdź, czy repozytorium zawiera obraz z tagiem latest.

    Zrzut ekranu przedstawiający repozytorium i otagowany obraz kontenera systemu rezerwacji w rejestrze.

Ładowanie i uruchamianie obrazu przy użyciu wystąpienia kontenera platformy Azure

  1. W witrynie Azure Portal wybierz polecenie Utwórz zasób. Zostanie wyświetlone okienko Tworzenie zasobu .

  2. W menu zasobów wybierz pozycję Kontenery, a następnie wybierz pozycję Wystąpienia kontenerów.

    Zrzut ekranu przedstawiający wystąpienia kontenera.

    Zostanie wyświetlone okienko Tworzenie wystąpienia kontenera.

    Istnieje kilka kroków konfigurowania wystąpienia kontenera. Zacznij od ustawienia informacji o grupie zasobów i szczegółów kontenera. Następnie skonfiguruj opcje sieciowe kontenera i uruchom ponownie zasady.

  3. Na karcie Podstawy wprowadź następujące wartości dla każdego ustawienia.

    Ustawienie Wartość
    Szczegóły projektu
    Subskrypcja Wybierz domyślną subskrypcję platformy Azure, w której możesz tworzyć zasoby i zarządzać nimi
    Grupa zasobów Ponowne używanie istniejącej grupy zasobów learn-deploy-container-aci-rg
    Szczegóły kontenera
    Nazwa kontenera hotelsysteminstance
    Region (Region) Użyj domyślnej lokalizacji
    Strefy dostępności Zaakceptuj wartość domyślną
    SKU Standardowa
    Źródło obrazu Inny rejestr
    Typ obrazu Prywatne
    Obraz <nazwa_rejestru>.azurecr.io/reservationsystem:latest
    Serwer logowania rejestru obrazów Wprowadź nazwę serwera logowania dla rejestru
    Nazwa użytkownika rejestru obrazów Wprowadź nazwę użytkownika dla rejestru
    Hasło rejestru obrazów Wprowadź hasło dla rejestru
    Typ systemu operacyjnego Linux
    Rozmiar Pozostaw domyślny rozmiar ustawiony na 1 vcpu, 1,5 GiB pamięci, 0 gpu
  4. Wybierz pozycję Dalej: Sieć.

  5. Na karcie Sieć wprowadź następujące wartości dla każdego ustawienia.

    Ustawienie Wartość
    Typ sieci Publiczne
    Etykieta nazwy DNS Wybierz unikatową nazwę, która będzie używana jako część adresu URL kontenera.
    Ponowne użycie zakresu etykiety nazw DNS Zaakceptuj wartość domyślną
    Porty
    Porty 80
    Protokół portów TCP
  6. Wybierz pozycję Dalej: Zaawansowane.

  7. Na karcie Zaawansowane wprowadź następujące wartości dla każdego ustawienia.

    Ustawienie Wartość
    Zasady ponownego uruchamiania Zawsze
    Zmienne środowiskowe pozostaw wszystkie ustawienia puste
    Przesłanianie poleceń Pozostaw puste
  8. Wybierz pozycję Przejrzyj i utwórz. Poczekaj na zakończenie walidacji i w razie potrzeby popraw wszelkie błędy.

  9. Wybierz pozycję Utwórz.

  10. Po utworzeniu wystąpienia kontenera wybierz pozycję Przejdź do zasobu. Pojawi się okienko wystąpienia kontenera.

  11. W okienku Przegląd znajdź w pełni kwalifikowaną nazwę domeny (FQDN) wystąpienia kontenera.

    Zrzut ekranu przedstawiający nowe okienko w witrynie Azure Portal z właściwościami kontenera i wyróżnioną w pełni kwalifikowaną nazwą domeny.

  12. Za pomocą przeglądarki internetowej przejdź do adresu URL http://FQDN/api/reservations/1, zastępując nazwę FQDN w pełni kwalifikowaną nazwą domeny wystąpienia kontenera. Na przykład użycie widocznej nazwy FQDN na powyższym zrzucie ekranu wygląda następująco:

    http://hotel.southcentralus.azurecontainer.io/api/reservations/1
    

    Aplikacja internetowa powinna odpowiadać za pomocą obiektu JSON zawierającego szczegóły rezerwacji 1.

Gratulacje! Obraz platformy Docker został przekazany do usługi Azure Container Registry, a następnie uruchomiony przy użyciu usługi wystąpienia kontenera platformy Azure.