Publikowanie funkcji na platformie Azure przy użyciu narzędzi Core Tools

Ukończone

Do publikowania funkcji na platformie Azure można użyć narzędzi Core Tools.

Po skompilowaniu i przetestować prostą funkcję zainteresowania, chcesz opublikować ją na platformie Azure. Wspaniale byłoby zobaczyć, jak działa w Internecie. Gdy tak jest, możesz wysłać adres URL do współpracowników, aby mogli wywołać go z dowolnego miejsca.

Tworzenie aplikacji funkcji

Przed opublikowaniem projektu za pomocą narzędzi Core Tools należy utworzyć wymagane zasoby na platformie Azure, w tym aplikację funkcji używaną do hostowania projektu. Funkcje wymagają również konta magazynu. Do utworzenia tych zasobów platformy Azure nie można użyć narzędzi Core Tools. Zamiast tego można tworzyć aplikacje funkcji za pomocą narzędzi do zarządzania platformy Azure, które obejmują witrynę Azure Portal, interfejs wiersza polecenia platformy Azure i program Azure PowerShell. W następnym ćwiczeniu uruchom polecenie interfejsu wiersza polecenia az functionapp create platformy Azure, aby utworzyć aplikację funkcji, do której można opublikować kod.

W ramach tego samouczka najważniejszą opcją, którą należy wziąć pod uwagę podczas tworzenia aplikacji funkcji, jest środowisko uruchomieniowe języka. Aplikacja funkcji obsługuje tylko jedno środowisko uruchomieniowe języka. Jeśli masz już projekt funkcji lokalnych, który chcesz opublikować, pamiętaj, aby utworzyć aplikację funkcji z tym samym środowiskiem uruchomieniowym języka. Podczas próby wdrożenia projektu w aplikacji z innym środowiskiem uruchomieniowym publikowanie jest zatrzymywane z powodu błędu.

Publikowanie na platformie Azure

Aby opublikować projekt funkcji w aplikacji funkcji na platformie Azure, uruchom polecenie func azure functionapp publish <app_name> z folderu projektu functions. <app_name> to nazwa docelowej aplikacji funkcji na platformie Azure, a nie nazwa folderu projektu, która może być inna.

Publishing a function app with func azure functionapp publish.

Narzędzia Core Tools nie monituje o zalogowanie się do platformy Azure. Zamiast tego uzyskuje dostęp do subskrypcji i zasobów, ładując informacje o sesji z interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell. Jeśli nie masz aktywnej sesji w jednym z tych narzędzi, publikowanie zakończy się niepowodzeniem. Istnieje możliwość opublikowania z narzędzi Core Tools bez interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell. Jednak łatwiej jest, jeśli je masz. Zalecamy zainstalowanie jednego lub drugiego. Pamiętaj, aby zalogować się przed próbą opublikowania.

Gdy dane wyjściowe wskazują, że publikowanie jest ukończone, twoje funkcje są uruchomione na platformie Azure. Końcowe dane wyjściowe publikowania zawierają opublikowane funkcje, w tym adres URL wywołania każdej funkcji wyzwalanej przez protokół HTTP.

Fakty, które trzeba znać

Poniżej przedstawiono kilka kwestii, które należy wziąć pod uwagę podczas publikowania funkcji przy użyciu narzędzi Core Tools:

  • Narzędzia Core Tools nie weryfikują ani nie testują kodu funkcji podczas publikowania.
  • Przed opublikowaniem należy przeprowadzić testy za pomocą polecenia func start.
  • Podczas publikowania wszystkie funkcje obecne już w aplikacji docelowej są zatrzymywane i usuwane przed wdrożeniem zawartości projektu.
  • Nie można łączyć funkcji z wielu projektów w jedną aplikację, publikując je w tej sekwencji.
  • Wszystkie funkcje, które mają być w aplikacji, muszą znajdować się w jednym projekcie.
  • Publikowanie na platformie Azure nie tworzy żadnej relacji między lokalnym projektem a docelową aplikacją funkcji.
  • Jeden projekt funkcji można opublikować w wielu aplikacjach funkcji.
  • Możesz również ponownie opublikować projekt w tej samej aplikacji wielokrotnie, gdy pracujesz nad kodem.
  • Adresy URL wywołań wyświetlane po opublikowaniu mogą zawierać code parametr w ciągu zapytania.
  • Można go zobaczyć na zrzucie ekranu: ?code=4FowT1ywMNoxqa...
  • Funkcje wyzwalacza HTTP mają poziom autoryzacji funkcji, który wymaga przekazania klucza funkcji wpisu tajnego w nagłówkach żądania lub ciągu zapytania.
  • Narzędzia Core Tools zwracają klucz w ciągu zapytania wyświetlanego adresu URL dla wygody.