Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby wdrożyć kod projektu Azure Functions do Azure, możesz użyć różnych technologii. Ten artykuł zawiera omówienie dostępnych metod wdrażania i zaleceń dotyczących najlepszej metody użycia w różnych scenariuszach. Zawiera również kompleksową listę kluczowych informacji na temat podstawowych technologii wdrażania.
Metody wdrażania
Technologia wdrażania używana do publikowania kodu w aplikacji funkcji w Azure zależy od konkretnych potrzeb i punktu w cyklu programowania. Na przykład podczas programowania i testowania można wdrażać bezpośrednio z poziomu narzędzia programistycznego, takiego jak Visual Studio Code. Gdy aplikacja jest w środowisku produkcyjnym, częściej publikujesz bezpośrednio z systemu kontroli wersji lub przy użyciu zautomatyzowanego potoku publikacyjnego, który może obejmować walidację i testowanie.
W poniższej tabeli opisano dostępne metody wdrażania dla projektu kodu.
| Typ wdrożenia | Metody | Najlepsze dla... |
|---|---|---|
| Oparte na narzędziach | • Azure CLI • Visual Studio Code publikuj • Visual Studio publikuj • Publikowanie podstawowych narzędzi |
Wdrożenia podczas rozwoju i improwizowane wdrożenia. Wdrażanie kodu na żądanie przy użyciu lokalnych narzędzi programistycznych. |
| Zarządzane przez usługę App Service | • Centrum wdrażania (CI/CD) • Wdrożenia kontenerów |
Ciągłe wdrażanie (CI/CD) z zarządzania kodem źródłowym lub z rejestru kontenerów. Platforma App Service (Kudu) zarządza wdrożeniami. |
| Potoki zewnętrzne | • Azure Pipelines • GitHub Actions |
Ciągi produkcyjne, które obejmują walidację, testowanie i inne działania, które muszą zostać wykonane w ramach zautomatyzowanego wdrażania. Pipeline zarządza wdrożeniami. |
Użyj najlepszej technologii dla konkretnego scenariusza. Wiele metod wdrażania jest opartych na wdrożeniu zip, które jest zalecane.
Dostępność technologii wdrażania
Metoda wdrażania zależy również od planu hostingu i systemu operacyjnego, na którym jest uruchamiana aplikacja funkcji.
Obecnie usługa Functions oferuje pięć opcji hostowania aplikacji funkcji:
- Plan Elastycznego Zużycia
- Elastyczny plan Premium
- Plan dedykowany (App Service)
- Azure Container Apps
- Plan zużycia (starsza wersja)
Każdy plan ma różne zachowania. Nie wszystkie technologie wdrażania są dostępne dla każdego planu hostingu i systemu operacyjnego. Ten wykres zawiera informacje na temat obsługiwanych technologii wdrażania:
| Technologia wdrażania | Zużycie elastyczne | Zużycie | Elastic Premium | Dedykowana | Container Apps |
|---|---|---|---|---|---|
| Jedno wdrożenie | ✔ | ||||
| Wdrażanie zip | ✔ | ✔ | ✔ | ||
| Adres URL zewnętrznego pakietu1 | ✔ | ✔ | ✔ | ||
| Kontener Docker | Tylko system Linux | Tylko system Linux | Tylko system Linux | ✔ | |
| Kontrola źródła | tylko Windows | ✔ | ✔ | ||
| Lokalne narzędzie Git1 | tylko Windows | ✔ | ✔ | ||
| FTPS1 | tylko Windows | ✔ | ✔ | ||
| Edytowanie w portalu2 | ✔ | ✔ | ✔ |
1 Technologie wdrażania, które wymagają ręcznej synchronizacji wyzwalaczy , nie są zalecane.
2 Edytowanie w portalu jest wyłączone, gdy kod jest wdrażany w aplikacji funkcji spoza portalu. Aby uzyskać więcej informacji, w tym szczegóły obsługi języka do edycji w portalu, zobacz Szczegóły obsługi języka.
Najważniejsze pojęcia
Niektóre kluczowe pojęcia mają kluczowe znaczenie dla zrozumienia sposobu działania wdrożeń w Azure Functions.
Synchronizacja wyzwalacza
Po zmianie dowolnego z wyzwalaczy infrastruktura usługi Functions musi mieć świadomość zmian. Synchronizacja odbywa się automatycznie w przypadku wielu technologii wdrażania. Jednak w niektórych przypadkach należy ręcznie zsynchronizować wyzwalacze.
Zawsze należy ręcznie synchronizować wyzwalacze podczas korzystania z tych opcji wdrażania:
Możesz ręcznie zsynchronizować wyzwalacze na jeden z tych sposobów:
Uruchom ponownie aplikację funkcji w portalu Azure. Host usługi Functions wykonuje synchronizację wyzwalacza w tle po uruchomieniu aplikacji.
Użyj polecenia
az rest, aby wysłać żądanie HTTP POST, które wywołuje interfejs APIsyncfunctiontriggers, jak w tym przykładzie:az rest --method post --url https://management.azure.com/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Web/sites/<APP_NAME>/syncfunctiontriggers?api-version=2016-08-01
Należy pamiętać o tych zagadnieniach dotyczących operacji wyzwalaczy synchronizacji:
- Należy ręcznie ponownie uruchomić aplikację funkcji za każdym razem, gdy wdrożysz zaktualizowaną wersję pakietu wdrożeniowego przy użyciu tego samego adresu URL pakietu zewnętrznego.
- W przypadku aplikacji działających w planie Zużycie lub Elastic Premium należy również ręcznie zsynchronizować wyzwalacze w następujących scenariuszach:
- W przypadku wdrożeń użyj zewnętrznego adresu URL pakietu z wdrożeniem opartym na menedżerze zasobów przy użyciu szablonów usługi ARM lub Bicep lub plików programu Terraform.
- Podczas aktualizowania pakietu wdrożeniowego na miejscu przy użyciu tego samego adresu URL pakietu zewnętrznego.
- Po dodaniu ograniczeń sieciowych do istniejącej aplikacji funkcji należy zagwarantować łączność z domyślnym kontem magazynu hosta ustawionym w ustawieniach aplikacji
AzureWebJobsStorage. Aby uzyskać więcej informacji, zobacz Jak użyć zabezpieczonego konta przechowywania z Azure Functions.
Kompilacja zdalna
Podczas wdrażania możesz zażądać Azure Functions wykonania zdalnej kompilacji projektu kodu. W tych scenariuszach zażądaj kompilacji zdalnej zamiast kompilowania lokalnego:
- Wdrażasz aplikację do funkcji działającej na systemie Linux, którą opracowałeś na komputerze z systemem Windows. Taka sytuacja jest często w przypadku tworzenia aplikacji Python. Po utworzeniu pakietu wdrożeniowego lokalnie na Windows mogą pojawić się niepoprawne biblioteki.
- Projekt ma zależności od niestandardowego indeksu pakietów.
- Chcesz zmniejszyć rozmiar pakietu wdrożeniowego.
Sposób żądania kompilacji zdalnej zależy od tego, czy aplikacja działa w Azure w Windows czy Linux.
Wszystkie aplikacje funkcji działające w Windows mają małą aplikację do zarządzania, witrynę scm udostępnioną przez Kudu. Ta witryna obsługuje większość logiki wdrażania i kompilacji dla Azure Functions.
Podczas wdrażania aplikacji w Windows proces wdrażania uruchamia polecenia specyficzne dla języka, takie jak dotnet restore (C#) lub npm install (JavaScript).
Podczas wdrażania przy użyciu kompilacji zdalnych należy wziąć pod uwagę następujące kwestie:
- Kompilacje zdalne są obsługiwane w planie Zużycie dla aplikacji funkcji działających w systemie Linux. Jednak opcje wdrażania tych aplikacji są ograniczone, ponieważ nie mają one witryny Kudu
scm. - Aplikacje funkcji działające na Linuksie w planie Premium lub w planie Dedicated (App Service) mają witrynę
scm(Kudu), ale jest ona bardziej ograniczona w porównaniu do systemu Windows. - Zdalne kompilacje nie są wykonywane, gdy aplikacja używa run-from-package. Aby dowiedzieć się, jak używać zdalnej kompilacji w tych przypadkach, zobacz Zip deploy.
- Problemy z kompilacją zdalną mogą wystąpić podczas tworzenia aplikacji przed udostępnieniem funkcji (1 sierpnia 2019 r.). W przypadku starszych aplikacji utwórz nową aplikację funkcji lub uruchom
az functionapp update --resource-group <RESOURCE_GROUP_NAME> --name <APP_NAME>, aby zaktualizować funkcję aplikacji. To polecenie może podjąć dwie próby pomyślne.
Magazyn zawartości aplikacji
Metody wdrażania oparte na pakietach przechowują pakiet na koncie magazynu skojarzonym z aplikacją funkcji, którą definiuje ustawienie AzureWebJobsStorage . Jeśli są dostępne, aplikacje planu Consumption i Elastic Premium próbują korzystać z zasobów zawartości Azure Files na tym koncie, ale możesz także przechowywać pakiet w innym miejscu. Aplikacje planu Flex Consumption używają kontenera przechowywania na domyślnym koncie przechowywania, chyba że skonfigurujesz inne konto przechowywania do wdrożenia. Aby uzyskać więcej informacji, zapoznaj się ze szczegółami w temacie Gdzie zawartość aplikacji jest przechowywana w każdej technologii wdrażania omówionej w następnej sekcji.
Ważne
Konto magazynowe służy do przechowywania ważnych danych aplikacji, czasami włącznie z samym kodem aplikacji. Należy ograniczyć dostęp z innych aplikacji i użytkowników do konta storage.
Zabezpieczone sieci wirtualne
Gdy aplikacja funkcji ma włączone prywatne punkty końcowe i wyłączony dostęp do sieci publicznej, witryna wdrożeniowa (Kudu) nie jest publicznie dostępna. Gdy konto magazynu używane przez aplikację funkcji jest również zabezpieczone za pomocą prywatnych punktów końcowych, technologie, które muszą mieć dostęp do magazynu, są podobnie blokowane. Ze względu na te ograniczenia technologie wdrożeniowe opisane w tym artykule nie mogą uzyskać dostępu do w pełni sieciowo zabezpieczonej aplikacji funkcji z zewnątrz sieci wirtualnej.
Aby wdrożyć kod w aplikacji funkcji zabezpieczonej przez sieć, narzędzia wdrażania muszą mieć łączność z siecią wirtualną. Tę łączność można osiągnąć w następujący sposób:
- W przypadku wdrażania z potoku Azure użyj agenta samodzielnie hostowanego z dostępem do sieci wirtualnej lub skonfiguruj zarządzaną pulę agentów DevOps z obsługą sieci.
- W przypadku wdrażania z przepływu pracy GitHub użyj samodzielnie hostowanego runnera z dostępem do sieci wirtualnej lub skonfiguruj runnera hostowanego przez GitHub w wirtualnej sieci Azure.
- Połącz maszynę programową z siecią wirtualną przy użyciu sieci VPN typu punkt-lokacja lub usługi ExpressRoute.
Aby uzyskać więcej informacji na temat konfigurowania aplikacji funkcji w sieci wirtualnej, zobacz Jak skonfigurować Azure Functions za pomocą sieci wirtualnej.
Szczegóły technologii wdrażania
Następujące metody wdrażania są dostępne w Azure Functions. Aby określić, które technologie obsługuje każdy plan hostingu, zapoznaj się z tabelą dostępności technologii wdrażania .
Jedno wdrożenie
Jedno wdrożenie jest jedyną technologią wdrażania obsługiwaną w przypadku aplikacji w planie Flex Consumption. Wynikiem końcowym jest gotowy do uruchomienia pakiet .zip, na którym działa aplikacja funkcji.
Jak używać: Wdróż korzystając z funkcji publikowania w Visual Studio Code, lub z linii poleceń przy użyciu Azure Functions Core Tools lub Azure CLI. Nasze Azure Dev Ops Task i GitHub Action podobnie wykorzystują jedno wdrożenie po wykryciu, że aplikacja Flex Consumption jest wdrażana.
Podczas tworzenia aplikacji Flex Consumption należy określić kontener magazynu wdrożeniowego (blob) oraz metodę uwierzytelniania do niego. Domyślnie używane jest to samo konto magazynu, co w przypadku połączenia
AzureWebJobsStorage, z metodą uwierzytelniania opartą na stringu połączenia. W związku z tym ustawienia wdrożenia są konfigurowane w czasie tworzenia aplikacji bez konieczności używania ustawień aplikacji.
Kiedy należy go używać: One deploy to jedyna technologia wdrażania dostępna dla aplikacji funkcjonalnych działających w planie Flex Consumption.
Gdzie jest przechowywana zawartość aplikacji: podczas tworzenia aplikacji funkcji Flex Consumption należy określić kontener przechowywania wdrożenia. Ten kontener obiektów blob to miejsce, gdzie narzędzia przesyłają wdrożoną zawartość aplikacji. Aby zmienić lokalizację, możesz odwiedzić blok Ustawienia wdrożenia w portalu Azure lub użyć Azure CLI.
Wskazówka
Narzędzie diagnostyczne Flex Consumption Deployment jest dostępne w portalu Azure. Otwórz aplikację Flex Consumption, wybierz pozycję Diagnozuj i rozwiąż problemy, a następnie wyszukaj ciąg Flex Consumption Deployment. To narzędzie wyświetla szczegółowe informacje o wdrożeniach, w tym historię wdrażania, stan pakietu i zalecenia dotyczące rozwiązywania problemów.
Wdrażanie w formacie ZIP
Wdrażanie zip to domyślna i zalecana technologia wdrażania dla aplikacji funkcjonalnych w planach Zużycie, App Service (dedykowany) i Elastic Premium. Wynikiem końcowym jest gotowy do uruchomienia pakiet .zip, na którym działa aplikacja funkcji. Różni się on od zewnętrznego adresu URL pakietu , ponieważ platforma jest odpowiedzialna za zdalne kompilowanie i przechowywanie zawartości aplikacji.
Jak użyć go: Wdróż przy użyciu ulubionego narzędzia klienckiego: Visual Studio Code, Visual Studio lub z wiersza polecenia przy użyciu Azure Functions Core Tools lub Azure CLI. Nasze zadanie Azure Dev Ops i GitHub Action podobnie wykorzystują wdrażanie zip.
Podczas wdrażania przy użyciu narzędzia zip deploy możesz ustawić aplikację do uruchomienia z pakietu. Aby uruchomić z pakietu, ustaw wartość
WEBSITE_RUN_FROM_PACKAGEdla ustawienia aplikacji na1. Zalecamy wdrożenie za pomocą pliku zip. Zapewnia szybsze czasy ładowania aplikacji i jest to ustawienie domyślne dla programu VS Code, Visual Studio i Azure CLI.
Kiedy używać: Zip deploy jest domyślną i zalecaną technologią wdrażania dla aplikacji funkcji w planach Windows Consumption, Windows i Linux Elastic Premium oraz Windows i Linux App Service (dedykowane).
Gdzie przechowywana jest zawartość aplikacji: Zawartość aplikacji z wdrożenia zip jest domyślnie przechowywana w systemie plików, który Azure może wspierać za pomocą Azure Files z konta magazynu określonego podczas tworzenia aplikacji funkcji. W przypadku użycia systemu Linux, zawartość aplikacji jest zamiast tego utrwalana w obiekcie BLOB na koncie przechowywania określonym przez ustawienie aplikacji
AzureWebJobsStorage, a ustawienie aplikacjiWEBSITE_RUN_FROM_PACKAGEprzyjmuje wartość adresu URL obiektu BLOB.
Adres URL pakietu zewnętrznego
Adres URL pakietu zewnętrznego to opcja, jeśli chcesz ręcznie kontrolować sposób wykonywania wdrożeń. Ponosisz odpowiedzialność za przekazanie gotowego do uruchomienia pakietu .zip zawierającego utworzoną zawartość aplikacji do magazynu blob i odwoływanie się do tego zewnętrznego adresu URL jako ustawienia aplikacji w Twojej aplikacji funkcyjnej. Za każdym razem, gdy aplikacja zostanie ponownie uruchomiona, pobiera pakiet, instaluje go i uruchamia w trybie Uruchom z pakietu .
Jak go używać: Dodaj
WEBSITE_RUN_FROM_PACKAGEdo ustawień aplikacji. Wartość tego ustawienia powinna być adresem URL obiektu blob wskazującym lokalizację określonego pakietu, który ma zostać uruchomiony przez aplikację. Ustawienia można dodać w portalu lub używając Azure CLI.Jeśli używasz Azure Blob Storage, aplikacja funkcji może uzyskać dostęp do kontenera przy użyciu połączenia opartego na tożsamości zarządzanej lub sygnatury dostępu współdzielonego (SAS). Wybrana opcja ma wpływ na rodzaj adresu URL, którego używasz jako wartości dla
WEBSITE_RUN_FROM_PACKAGE. Zaleca się stosowanie tożsamości zarządzanej ze względu na ogólne bezpieczeństwo, ponieważ tokeny sygnatur współużytkowania wygasają i muszą być obsługiwane ręcznie.Za każdym razem, gdy wdrażasz plik pakietu, do którego odwołuje się aplikacja funkcji, należy ręcznie zsynchronizować wyzwalacze, w tym początkowe wdrożenie. Jeśli zmienisz zawartość pliku pakietu, a nie sam adres URL, musisz również ponownie uruchomić aplikację funkcji, aby zsynchronizować wyzwalacze. Zapoznaj się z naszym przewodnikiem z instrukcjami dotyczącymi konfigurowania tej technologii wdrażania.
Kiedy go używać: Zewnętrzny adres URL pakietu jest jedyną obsługiwaną metodą wdrażania dla aplikacji działających w planie Zużycia dla Linuxa, gdy nie chcesz, aby zdalna kompilacja wystąpiła. Ta metoda jest również zalecaną technologią wdrażania, gdy tworzysz swoją aplikację bez Azure Files. W przypadku skalowalnych aplikacji działających w systemie Linux należy rozważyć plan hostingowy Flex Consumption.
Gdzie jest przechowywana zawartość aplikacji: odpowiadasz za przesyłanie zawartości aplikacji do magazynu blob. Możesz użyć dowolnego konta magazynu obiektów blob, chociaż zaleca się Azure Blob Storage.
kontener Docker
Można wdrożyć aplikację funkcji działającą w kontenerze systemu Linux.
Jak użyć go:Utwórz funkcje w kontenerze systemu Linux a następnie wdróż kontener w planie premium lub dedykowanym w Azure Functions lub innym hoście kontenera. Użyj Azure Functions Core Tools, aby utworzyć dostosowany plik Dockerfile dla projektu, którego używasz do tworzenia konteneryzowanej aplikacji funkcji. Kontener można używać w następujących wdrożeniach:
- Wdróż zasoby do Azure Functions, które tworzysz w portalu Azure. Aby uzyskać więcej informacji, zobacz tworzenie Azure portal przy użyciu kontenerów.
- Wdróż zasoby Azure Functions, które tworzysz z poziomu wiersza polecenia. Wymaga planu Premium lub Dedykowanego (App Service). Aby dowiedzieć się, jak to zrobić, zobacz Utworzenie pierwszej konteneryzowanej funkcji Azure.
- Wdróż w Azure Container Apps. Aby dowiedzieć się, jak to zrobić, zobacz Utwórz swoje pierwsze konteneryzowane funkcje Azure w Azure Container Apps.
- Wdrażanie w klastrze Kubernetes. Można wdrożyć w klastrze przy użyciu Azure Functions Core Tools. Użyj polecenia
func kubernetes deploy.
Kiedy go używać: użyj opcji kontenera platformy Docker, jeśli potrzebujesz większej kontroli nad środowiskiem systemu Linux, w którym działa aplikacja funkcji i gdzie jest hostowany kontener. Ten mechanizm wdrażania jest dostępny tylko dla funkcji działających w systemie Linux.
Gdzie jest przechowywana zawartość aplikacji: Zawartość aplikacji jest przechowywana w określonym rejestrze kontenerów w ramach obrazu.
Kontrola źródła
Możesz włączyć ciągłą integrację między aplikacją funkcji a repozytorium kodu źródłowego. Po włączeniu kontroli źródła aktualizacja kodu w połączonym repozytorium źródłowym wyzwala wdrożenie najnowszego kodu z repozytorium. Aby uzyskać więcej informacji, zobacz Ciągłe wdrażanie dla Azure Functions.
Jak go używać: Najprostszym sposobem skonfigurowania publikowania z kontroli wersji jest skorzystanie z Centrum Wdrażania w obszarze Funkcje portalu. Aby uzyskać więcej informacji, zobacz Ciągłe wdrażanie dla Azure Functions.
Kiedy go używać: Korzystanie z kontroli źródła jest najlepszym rozwiązaniem dla zespołów, które współpracują ze swoimi aplikacjami funkcji. System kontroli wersji to dobra opcja wdrożenia, która umożliwia bardziej zaawansowane ciągi wdrożeniowe. Zwykle można włączyć kontrolę źródła w miejscu przejściowym, które można zamienić na środowisko produkcyjne po weryfikacji aktualizacji z repozytorium. Aby uzyskać więcej informacji, zobacz Azure Functions miejsca wdrożenia.
Gdzie jest przechowywana zawartość aplikacji: System kontroli źródła przechowuje zawartość aplikacji. System plików aplikacji przechowuje lokalnie sklonowany i skompilowany formularz zawartości aplikacji, który Azure Files z konta magazynu określonego podczas tworzenia aplikacji funkcji może zostać przywrócony.
Lokalna usługa Git
Użyj lokalnego narzędzia Git, aby wypchnąć kod z komputera lokalnego do Azure Functions przy użyciu usługi Git.
Jak go używać: Postępuj zgodnie z instrukcjami w Lokalne wdrożenie Git do usługi Azure App Service.
Kiedy należy go używać: Aby zmniejszyć prawdopodobieństwo wystąpienia błędów, należy unikać używania metod wdrażania, które wymagają dodatkowego kroku ręcznego synchronizowania wyzwalaczy. Jeśli to możliwe, użyj wdrożenia za pomocą pliku zip.
Gdzie jest przechowywana zawartość aplikacji: Zawartość aplikacji jest przechowywana w systemie plików, który może być wspierany przez Azure Files z konta magazynowego określonego podczas tworzenia aplikacji funkcji.
FTP/S
Za pomocą protokołu FTP/S można bezpośrednio przesyłać pliki do Azure Functions, ale nie należy używać tej metody wdrażania. Jeśli nie planujesz korzystania z protokołu FTP, wyłącz go. Jeśli zdecydujesz się używać protokołu FTP, upewnij się, że wymuszasz korzystanie z FTPS. Aby dowiedzieć się, jak to zrobić w portalu Azure, zobacz Enforce FTPS.
Jak go używać: Postępuj zgodnie z instrukcjami w ustawieniach wdrażania usługi FTPS , aby uzyskać adres URL i poświadczenia, których można użyć do wdrożenia w aplikacji funkcji przy użyciu usługi FTPS.
Kiedy należy go używać: Aby zmniejszyć prawdopodobieństwo wystąpienia błędów, należy unikać używania metod wdrażania, które wymagają dodatkowego kroku ręcznego synchronizowania wyzwalaczy. Jeśli to możliwe, użyj wdrożenia za pomocą pliku zip.
Gdzie jest przechowywana zawartość aplikacji: Zawartość aplikacji jest przechowywana w systemie plików. Wdrożenia FTP/FTPS kończą się niepowodzeniem, gdy system plików aplikacji jest wspierany przez Azure Files na domyślnym koncie magazynu hosta. Protokół FTP/FTPS zawodzi przy korzystaniu z Azure Files jako zamontowanego magazynu z powodu ograniczeń FTP.
Edytowanie portalu
W edytorze opartym na portalu można bezpośrednio edytować pliki, które znajdują się w aplikacji funkcji (zasadniczo wdrażane przy każdym zapisywaniu zmian).
Jak użyć go: Aby edytować funkcje w portalu Azure portal należy utwórz funkcje w portalu. Aby zachować pojedyncze źródło prawdy, użycie dowolnej innej metody wdrażania sprawia, że funkcja jest tylko do odczytu i uniemożliwia ciągłą edycję portalu. Aby powrócić do stanu, w którym można edytować pliki w portalu Azure, możesz ręcznie włączyć tryb edycji z powrotem do
Read/Writei usunąć wszystkie ustawienia aplikacji związane z wdrażaniem (na przykładWEBSITE_RUN_FROM_PACKAGE).
Kiedy go używać: Portal jest dobrym sposobem na rozpoczęcie pracy z Azure Functions. Ze względu na ograniczenia rozwoju w portalu Azure należy użyć jednego z następujących narzędzi klienckich do bardziej zaawansowanych prac programistycznych:
Gdzie jest przechowywana zawartość aplikacji: Zawartość aplikacji jest przechowywana w systemie plików, który może być wspierany przez Azure Files z konta magazynowego określonego podczas tworzenia aplikacji funkcji.
Zachowania wdrożenia
Podczas wdrażania aktualizacji w kodzie aplikacji funkcji zachowanie wdrożenia zależy od planu hostingu:
Zużycie, Elastyczna Premium i Plany Dedykowane: Obecnie wykonywane funkcje są przerywane po zaimplementowaniu nowego kodu. Po zakończeniu wdrażania nowy kod zostanie załadowany w celu rozpoczęcia przetwarzania żądań. To wymuszone zachowanie zakończenia jest nazywane strategią odtworzenia. Aby zapewnić wdrożenia z niemal zerowym czasem przestoju w planach Zużycia, Elastycznej wersji Premium i Dedykowanego, użyj miejsc wdrożenia.
Aby dowiedzieć się, jak pisać funkcje bezstanowe i obronne, przejrzyj dokumentację Jak poprawić wydajność i niezawodność Azure Functions.
Plan konsumpcji elastycznej: Domyślnie wykorzystuje strategię odtworzenia, co skutkuje zakończeniem aktualnie wykonywanych funkcji podczas wdrażania. Jednak Flex Consumption unikalnie wspiera dwie różne strategie aktualizacji witryny. Można skonfigurować aktualizacje stopniowe dla wdrożeń bez przestojów.
Miejsca wdrożenia
Podczas wdrażania aplikacji funkcjonalnej na platformie Azure można wdrożyć w osobnym gnieździe wdrożeniowym, zamiast bezpośredniego wdrażania do środowiska produkcyjnego. Wdrażanie do slota wdrożeniowego, a następnie zmiana na produkcję po weryfikacji jest zalecanym sposobem konfigurowania ciągłego wdrażania.
Sposób wdrażania na slot zależy od wybranego narzędzia, którego używasz do wdrażania. Na przykład w przypadku korzystania z narzędzi Azure Functions Core Tools należy dołączyć opcję --slot, aby wskazać nazwę określonego miejsca dla polecenia func azure functionapp publish.
Aby uzyskać więcej informacji na temat miejsc wdrożenia, zobacz dokumentację Azure Functions Miejsca wdrożenia.
Następne kroki
Przeczytaj następujące artykuły, aby dowiedzieć się więcej na temat wdrażania aplikacji funkcji:
- Kontynualne wdrożenie dla Azure Functions
- Ciągłe dostarczanie przy użyciu Azure Pipelines
- Wdrożenia ZIP dla Azure Functions
- Uruchom Azure Functions z pliku pakietu
- Automatyzuj wdrożenie zasobów dla aplikacji funkcji w ramach Azure Functions
- Konfigurowanie wdrożeń bez przestojów w rozwiązaniu Flex Consumption