Dodawanie obsługi interfejsu wiersza polecenia dla deweloperów platformy Azure do aplikacji przy użyciu kodu w katalogu aplikacji

Interfejs wiersza polecenia dla deweloperów platformy Azure (azd) udostępnia dwa różne przepływy pracy umożliwiające zainicjowanie szablonu do użycia z aplikacją, w tym:

  • Użyj kodu w bieżącym katalogu: to podejście analizuje aplikację i automatycznie ocenia obsługiwaną infrastrukturę i zasoby konfiguracji.
  • Wybierz szablon: to podejście umożliwia zintegrowanie istniejącego szablonu z aplikacją lub użycie istniejącego szablonu jako punktu wyjścia dla nowej aplikacji.

Oba te podejścia są eksplorowane w przeglądu przeglądu szablonów interfejsu wiersza polecenia platformy Azure.

Z tego artykułu dowiesz się, jak dodać obsługę interfejsu wiersza polecenia dla deweloperów platformy Azure () do aplikacji za pomocą metody Use code in the current directory approach (azdUżywanie kodu w bieżącym katalogu). Aby uzyskać więcej informacji na temat alternatywnego podejścia, odwiedź stronę Dodawanie azd obsługi do aplikacji przy użyciu istniejącego dokumentu szablonu. Więcej informacji na temat tworzenia azd szablonów można również znaleźć w sekcji Trenowanie — kompilowanie i wdrażanie azd szablonów.

Używanie kodu w bieżącym katalogu

  1. Możesz wykonać kroki opisane wcześniej przy użyciu własnego projektu. Jeśli jednak wolisz użyć przykładowej aplikacji, sklonuj następujące repozytorium początkowe do pustego katalogu na komputerze:

    git clone https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart
    
  2. Otwórz terminal w katalogu głównym projektu.

  3. Uruchom polecenie , azd init aby zainicjować szablon.

    azd init
    
  4. Po wyświetleniu monitu wybierz opcję Użyj kodu w bieżącym katalogu. azd analizuje projekt i zawiera podsumowanie wykrytych usług i zalecanych zasobów hostingu platformy Azure.

  5. Wybierz pozycję Potwierdź i kontynuuj inicjowanie mojej aplikacji. azd generuje następujące zasoby w katalogu głównym projektu:

    • Plik azure.yaml z odpowiednimi definicjami usługi.
    • Folder infra z plikami infrastruktury jako kodu w celu aprowizowania i wdrażania projektu na platformie Azure.
    • .azure Folder ze zmiennymi środowiskowymi ustawionymi w .env pliku.

    Więcej informacji na temat tego procesu wykrywania i generowania znajduje się w dalszej części artykułu.

  6. Wygenerowane pliki działają zgodnie z podanymi przykładowymi aplikacjami i mogą również korzystać z własnych aplikacji. W razie potrzeby wygenerowane pliki można modyfikować zgodnie z potrzebami. Na przykład może być konieczne dalsze zmodyfikowanie plików infrastruktury jako kodu w infra folderze, jeśli aplikacja korzysta z zasobów platformy Azure poza tymi, które zostały zidentyfikowane przez azdprogram .

  7. Uruchom polecenie , azd up aby aprowizować i wdrożyć aplikację na platformie Azure.

    azd up
    
  8. Po wyświetleniu monitu wybierz żądaną subskrypcję i lokalizację, aby rozpocząć proces aprowizacji i wdrażania.

  9. Po zakończeniu procesu kliknij link w azd danych wyjściowych, aby otworzyć aplikację w przeglądarce.

Eksplorowanie kroków inicjowania

Po wybraniu przepływu pracy azd init Użyj kodu w bieżącym katalogu polecenie analizuje projekt i automatycznie ocenia kod na podstawie tego, co odnajduje. W poniższych sekcjach opisano szczegóły działania tego procesu i które technologie są obecnie obsługiwane.

Detection

Polecenie azd init wykrywa pliki projektu dla obsługiwanych języków znajdujących się w katalogu projektu i podkatalogach. azd Skanuje również zależności pakietów w celu zebrania informacji o strukturach internetowych lub bazach danych używanych przez aplikację. W razie potrzeby możesz ręcznie dodać lub edytować wykryte składniki, jak pokazano w wierszu polecenia podsumowania potwierdzenia.

Bieżąca logika wykrywania jest następująca:

  • Obsługiwane języki:
    • Python
    • JavaScript/TypeScript
    • .NET
    • Java
  • Obsługiwane bazy danych:
    • MongoDB
    • PostgreSQL
  • W przypadku języków Python i JavaScript/TypeScript platformy internetowe i bazy danych są automatycznie wykrywane.
  • Gdy projekt JavaScript/TypeScript używa platformy internetowej frontonu (lub po stronie klienta), jest klasyfikowany jako usługa frontonu. Jeśli usługa korzysta z platformy internetowej frontonu, która jest obecnie niewykryta, możesz wybrać opcję JQuery, aby zapewnić równoważną klasyfikację i zachowanie usługi frontonu.

Generowanie

Po potwierdzeniu wykrytych składników azd init program generuje pliki infrastruktury jako kodu potrzebne do wdrożenia aplikacji na platformie Azure.

Logika generowania jest następująca:

  • Obsługiwane hosty:
    • Azure Container Apps.
  • W przypadku baz danych obsługiwane mapowanie technologii bazy danych i używanej usługi:
    • MongoDB: interfejs API usługi Azure CosmosDB dla bazy danych MongoDB
    • PostgreSQL: elastyczny serwer usługi Azure Database for PostgreSQL
    • Redis: dodatek Azure Container Apps Redis
  • Usługi korzystające z baz danych będą miały zmienne środowiskowe, które domyślnie zapewniają połączenie z bazą danych wstępnie skonfigurowaną.
  • Po wykryciu zarówno usług frontonu, jak i zaplecza konfiguracja mechanizmu CORS na hoście platformy Azure dla usług zaplecza zostanie zaktualizowana w celu umożliwienia domyślnej domeny hostingu usług frontonu. Można to zmodyfikować lub usunąć w razie potrzeby w infrastrukturze jako plikach konfiguracji kodu.

Dodawanie obsługi kontenerów deweloperskich

Możesz również ustawić szablon zgodny z kontenerami programistycznymi i usługami Codespaces. Kontener deweloperski umożliwia używanie kontenera jako w pełni funkcjonalnego środowiska deweloperskiego. Może służyć do uruchamiania aplikacji, do oddzielania narzędzi, bibliotek lub środowisk uruchomieniowych potrzebnych do pracy z bazą kodu oraz do pomocy w ciągłej integracji i testowaniu. Kontenery deweloperskie można uruchamiać lokalnie lub zdalnie w chmurze prywatnej lub publicznej. (Źródło: https://containers.dev/)

Aby dodać obsługę kontenerów deweloperskich:

  1. Utwórz folder .devcontainer w katalogu głównym projektu.

  2. devcontainer.json Utwórz plik w folderze .devcontainer z żądanymi konfiguracjami. Szablon azd startowy zawiera przykładowy devcontainer.json plik, który można skopiować do projektu i zmodyfikować zgodnie z potrzebami.

Przeczytaj więcej na temat pracy z kontenerami deweloperskimi w dokumentacji programu Visual Studio Code.

Dodawanie obsługi potoku ciągłej integracji/ciągłego wdrażania

Możesz również dodać obsługę ciągłej integracji/ciągłego wdrażania w szablonie przy użyciu akcji GitHub lub usługi Azure DevOps, wykonując następujące kroki:

  1. .github Dodaj folder dla funkcji GitHub Actions lub .ado folder dla usługi Azure DevOps do katalogu głównego projektu.

  2. Dodaj plik przepływu pracy do nowego folderu. Szablon azd startowy zawiera przykładowy plik przepływu pracy funkcji GitHub Actions i przykładowe pliki usługi Azure DevOps Pipelines dla każdej platformy, którą można skopiować do projektu i zmodyfikować zgodnie z potrzebami.

  3. Może być również konieczne zaktualizowanie main.parameters.json pliku w infra folderze przy użyciu wymaganych zmiennych środowiskowych do uruchomienia przepływu pracy.