Wdrażanie do usługi App Service

Ukończone

Każdy zespół programistyczny ma unikatowe wymagania, które mogą utrudnić implementację wydajnego potoku wdrażania w dowolnej usłudze w chmurze. Usługa App Service obsługuje wdrażanie automatyczne i ręczne.

Wdrożenie automatyczne

Automatyczne wdrażanie lub ciągłe wdrażanie to proces służący do wypychania nowych funkcji i poprawek usterek w szybkim i powtarzalnym wzorcu z minimalnym wpływem na użytkowników końcowych.

Platforma Azure obsługuje wdrożenie automatyczne bezpośrednio z wielu źródeł. Dostępne są następujące opcje:

  • Azure DevOps Services: możesz wypchnąć kod do usług Azure DevOps Services, skompilować kod w chmurze, uruchomić testy, wygenerować wydanie z kodu, a na koniec wypchnąć kod do aplikacji internetowej platformy Azure.
  • GitHub: platforma Azure obsługuje wdrożenie automatyczne bezpośrednio z repozytorium GitHub. Po połączeniu repozytorium GitHub z platformą Azure w celu automatycznego wdrażania wszelkie zmiany wypychane do gałęzi produkcyjnej w usłudze GitHub zostaną automatycznie wdrożone.
  • Bitbucket: dzięki podobieństwu do usługi GitHub możesz podobnie skonfigurować wdrożenie automatyczne w usłudze Bitbucket.

Wdrażanie ręczne

Ręczne wypychanie kodu na platformę Azure jest możliwe na kilka sposobów:

  • Git: aplikacje internetowe usługi App Service zawierają adres URL usługi Git, który można dodać jako repozytorium zdalne. Wypychanie do repozytorium zdalnego powoduje wdrożenie aplikacji.
  • Interfejs wiersza polecenia: webapp up to funkcja interfejsu az wiersza polecenia, która pakuje aplikację i wdraża ją. W przeciwieństwie do innych metod wdrażania az webapp up może utworzyć nową aplikację internetową usługi App Service.
  • Wdrażanie zip: użyj curl lub podobnego narzędzia HTTP, aby wysłać plik ZIP plików aplikacji do usługi App Service.
  • FTP/S: FTP lub FTPS to tradycyjny sposób wypychania kodu do wielu środowisk hostingu, w tym usługi App Service.

Korzystanie z miejsc wdrożenia

Jeśli to możliwe, użyj miejsc wdrożenia podczas wdrażania nowej kompilacji produkcyjnej. W przypadku korzystania z warstwy Planu usługi App Service w warstwie Standardowa lub lepszej możesz wdrożyć aplikację w środowisku przejściowym, a następnie zamienić miejsca przejściowe i produkcyjne. Operacja zamiany rozgrzewa wystąpienia procesów roboczych niezbędne do dopasowania do skali produkcyjnej, eliminując w ten sposób przestoje.

Ciągłe wdrażanie kodu

Jeśli projekt wyznacza gałęzie do testowania, kontroli jakości i przemieszczania, każde z tych gałęzi powinno być stale wdrażane w miejscu przejściowym. Dzięki temu uczestnicy projektu mogą łatwo ocenić i przetestować wdrożona gałąź.

Ciągłe wdrażanie kontenerów

W przypadku kontenerów niestandardowych z usługi Azure Container Registry lub innych rejestrów kontenerów wdróż obraz w miejscu przejściowym i zamień na środowisko produkcyjne, aby zapobiec przestojom. Automatyzacja jest bardziej złożona niż wdrażanie kodu, ponieważ należy wypchnąć obraz do rejestru kontenerów i zaktualizować tag obrazu w aplikacji internetowej.

  • Skompiluj i oznacz obraz tagem: w ramach potoku kompilacji oznacz obraz identyfikatorem zatwierdzenia git, znacznikiem czasu lub innymi możliwymi do zidentyfikowania informacjami. Najlepiej nie używać domyślnego tagu "latest". W przeciwnym razie trudno jest prześledzić, jaki kod jest obecnie wdrożony, co znacznie utrudnia debugowanie.
  • Wypchnij otagowany obraz: po skompilowania i otagowania obrazu potok wypchnie obraz do rejestru kontenerów. W następnym kroku miejsce wdrożenia ściągnie otagowany obraz z rejestru kontenerów.
  • Zaktualizuj miejsce wdrożenia przy użyciu nowego tagu obrazu: po zaktualizowaniu tej właściwości witryna automatycznie ponownie uruchomi i ściągnie nowy obraz kontenera.

Kontenery przyczepki

W usłudze Azure App Service można dodać do dziewięciu kontenerów przyczepki dla każdej niestandardowej aplikacji kontenera z obsługą przyczepki. Kontenery przyczepki umożliwiają wdrażanie dodatkowych usług i funkcji w aplikacji kontenera bez ścisłego sprzężenia ich z głównym kontenerem aplikacji. Można na przykład dodać monitorowanie, rejestrowanie, konfigurację i usługi sieciowe jako kontenery przyczepki.

Kontener przyczepki można dodać za pomocą centrum wdrażania na stronie zarządzania aplikacją.