Projektkompatibilissé tétele az Azure Developer CLI-vel

Az Azure Developer CLI (azd) lehetővé teszi a fejlesztők számára, hogy a GitHubon tárolt sablonokkal építsék fel alkalmazásaikat a felhőbe. A Microsoft számos sablont biztosít az első lépésekhez. Ebből a cikkből megtudhatja, hogyan teheti kompatibilissé saját alkalmazását azd .

A sablonarchitektúra ismertetése

Az alábbi diagram gyors áttekintést nyújt a sablon létrehozásának azd folyamatáról:

Diagram of Azure Developer CLI template workflow.

Minden azd sablon ugyanazzal a fájlstruktúrával rendelkezik, a konvenciók alapján azd . Az alábbi hierarchia az oktatóanyagban felépíteni kívánt címtárstruktúrát mutatja be.

├── .azdo                                        [ Configures an Azure Pipeline ]
├── .devcontainer                                [ For DevContainer ]
├── .github                                      [ Configures a GitHub workflow ]
├── .vscode                                      [ VS Code workspace configurations ]
├── .azure                                       [ Stores Azure configurations and environment variables ]
├── infra                                        [ Contains infrastructure as code files ]
│   ├── main.bicep/main.tf                       [ Main infrastructure file ]
│   ├── main.parameters.json/main.tfvars.json    [ Parameters file ]
│   └── core/modules                             [ Contains reusable Bicep/Terraform modules ]
└── azure.yaml                                   [ Describes the app and type of Azure resources]

A sablon inicializálása

A azd init parancs az alkalmazás inicializálására szolgál az alkalmazás erőforrásainak üzembe helyezéséhez és üzembe helyezéséhez az Azure-ban. Ez a parancssor két különböző munkafolyamat közül választva inicializálja a következő szakaszokban ismertetett sablonokat.

  • Kód használata az aktuális könyvtárban: Ezt a lehetőséget választva utasíthatja azd , hogy elemezze a könyvtárban lévő kódot az általa használt technológiák( például a programozási nyelv, a keretrendszer és az adatbázisrendszer) azonosításához. azd ezután automatikusan létrehozza a sablonelemeket, például a azure.yaml szolgáltatásdefiníciós fájlt és a infra kódként használt infrastruktúrát tartalmazó mappát.

  • Sablon kiválasztása: Válassza ezt a lehetőséget, ha egy meglévő sablont szeretne kiindulási pontként használni. Alapértelmezés szerint lehetővé teszi, azd hogy sablonokat tallózzon a Félelmetes AZD-katalógusból , de saját sablongyűjteményeket is konfigurálhat. Amikor kiválaszt egy sablont, a sablon eszközei hozzá lesznek adva a meglévő projektkönyvtárhoz.

Az egyes munkafolyamatok részleteit az alábbi szakaszok ismertetik.

  1. A következő lépéseket saját projektje segítségével követheti. Ha azonban szeretne követni egy mintaalkalmazást, klónozza a következő kezdő adattárat egy üres könyvtárba a számítógépen:

    git clone https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart
    
  2. Nyissa meg a választott parancssori eszközt a projekt gyökérkönyvtárában.

  3. Futtassa a azd init parancsot a sablon inicializálásához.

    azd init
    
  4. Amikor a rendszer kéri, válassza a Kód használata az aktuális könyvtárban lehetőséget. azd elemzi a projektet, és összefoglalja az észlelt szolgáltatásokat és a javasolt Azure-üzemeltetési erőforrásokat.

  5. Válassza a Megerősítés és az alkalmazás inicializálása lehetőséget. azd A projekt gyökérkönyvtárában a következő objektumokat hozza létre:

    • Megfelelő azure.yaml szolgáltatásdefiníciókkal rendelkező fájl.
    • A infra projekt üzembe helyezéséhez és az Azure-ban való üzembe helyezéséhez szükséges infrastruktúra-kódfájlokat tartalmazó mappa.
    • Egy .azure fájlban .env beállított környezeti változókat tartalmazó mappa.

    Erről az észlelési és létrehozási folyamatról a cikk későbbi részében olvashat bővebben.

  6. A létrehozott fájlok a megadott mintaalkalmazáshoz hasonlóan működnek, és a saját alkalmazásaihoz is használhatók. Szükség esetén a létrehozott fájlok az igényeinek megfelelően módosíthatók. Előfordulhat például, hogy tovább kell módosítania a mappában lévő infra infrastruktúra-kódfájlokat, ha az alkalmazás az azure-erőforrásokra támaszkodik az általuk azdazonosítottakon túl.

  7. Futtassa a parancsot az azd up alkalmazás üzembe helyezéséhez és üzembe helyezéséhez az Azure-ban.

    azd up
    
  8. Amikor a rendszer kéri, válassza ki a kívánt előfizetést és helyet a kiépítési és üzembe helyezési folyamat megkezdéséhez.

  9. Ha a folyamat befejeződött, kattintson a kimenetben található azd hivatkozásra az alkalmazás böngészőben való megnyitásához.

Az inicializálás lépéseinek megismerése

Amikor kiválasztja a Kód használata lehetőséget az aktuális címtár-munkafolyamatban , a azd init parancs elemzi a projektet, és automatikusan létrehozza a kódot a felderített adatok alapján. Az alábbi szakaszok ismertetik a folyamat működésének és a jelenleg támogatott technológiáknak a részleteit.

Detection

A azd init parancs észleli a projektkönyvtárban és alkönyvtárakban található támogatott nyelvek projektfájljait. azd A csomagfüggőségeket is megvizsgálja, hogy információkat gyűjtsön az alkalmazás által használt webes keretrendszerekről vagy adatbázisokról. Szükség esetén manuálisan is hozzáadhatja vagy szerkesztheti az észlelt összetevőket a megerősítést kérő összefoglaló üzenetben leírtak szerint.

Az aktuális észlelési logika a következő:

  • Támogatott nyelvek:
    • Python
    • JavaScript/TypeScript
    • .NET
    • Java
  • Támogatott adatbázisok:
    • MongoDB
    • PostgreSQL
  • Python és JavaScript/TypeScript esetén a rendszer automatikusan észleli a webes keretrendszereket és adatbázisokat.
  • Ha egy JavaScript/TypeScript-projekt előtérbeli (vagy ügyféloldali) webes keretrendszert használ, az előtér-szolgáltatásként van besorolva. Ha a szolgáltatás egy jelenleg nem észlelt előtér-webes keretrendszert használ, a JQuery kiválasztásával egyenértékű előtér-szolgáltatásbesorolást és -viselkedést biztosíthat.

Generáció

Miután megerősítette az észlelt összetevőket, azd init létrehozza az alkalmazás Azure-ban való üzembe helyezéséhez szükséges infrastruktúra-kódfájlokat.

A létrehozási logika a következő:

  • Támogatott gazdagépek:
    • Azure Container Apps.
  • Adatbázisok esetében az adatbázis-technológia és a használt szolgáltatás közötti támogatott leképezés:
    • MongoDB: Azure CosmosDB API a MongoDB-hez
    • PostgreSQL: Rugalmas Azure Database for PostgreSQL-kiszolgáló
    • Redis: Azure Container Apps Redis bővítmény
  • Az adatbázisokat használó szolgáltatások környezeti változókkal rendelkeznek, amelyek alapértelmezés szerint előre konfigurált kapcsolatot biztosítanak az adatbázissal.
  • Az előtér- és háttérszolgáltatások észlelésekor az Azure-gazdagép háttérszolgáltatásokhoz készült CORS-konfigurációja frissül, hogy engedélyezve legyen az előtérbeli szolgáltatások alapértelmezett üzemeltetési tartománya. Ez szükség szerint módosítható vagy eltávolítható az infrastruktúra kódkonfigurációs fájljaiban.

Fejlesztői tárolók támogatásának hozzáadása

A sablont a fejlesztői tárolókkal és a Codespace-ekkel is kompatibilissé teheti. A fejlesztői tárolók lehetővé teszik a tárolók teljes körű fejlesztési környezetként való használatát. Alkalmazás futtatására, a kódbázis használatához szükséges eszközök, kódtárak és futtatókörnyezetek elkülönítésére, valamint a folyamatos integráció és tesztelés elősegítésére használható. A fejlesztői tárolók helyileg vagy távolról is futtathatók privát vagy nyilvános felhőben. (Forrás: https://containers.dev/)

Fejlesztői tárolók támogatásának hozzáadása:

  1. Hozzon létre egy .devcontainer mappát a projekt gyökerénél.

  2. Hozzon létre egy devcontainer.json fájlt a .devcontainer mappában a kívánt konfigurációkkal. A azd kezdősablon egy mintafájlt devcontainer.json biztosít, amelyet átmásolhat a projektbe, és szükség szerint módosíthatja azt.

További információ a fejlesztői tárolókról a Visual Studio Code dokumentációjában.

CI/CD-folyamat támogatásának hozzáadása

A ci/CD támogatását a sablonban a GitHub-műveletek vagy az Azure DevOps használatával is hozzáadhatja a következő lépések végrehajtásával:

  1. Adjon hozzá egy .github mappát a GitHub-műveletekhez vagy egy .ado Azure DevOps-mappát a projekt gyökeréhez.

  2. Vegyen fel egy munkafolyamat-fájlt az új mappába. A azd kezdősablon egy GitHub Actions-mintafájlt és Azure DevOps Pipelines-mintafájlt biztosít minden olyan platformhoz, amelyet átmásolhat a projektbe, és szükség szerint módosíthatja őket.

  3. Előfordulhat, hogy frissítenie kell a main.parameters.json mappában lévő infra fájlt a munkafolyamat futtatásához szükséges környezeti változókkal.

A CI/CD-folyamat konfigurálása

Ha a sablon támogatja a GitHub Actionst vagy az Azure Pipelinest, az alábbi lépések végrehajtásával konfigurálhat egy CI/CD-folyamatot:

  1. Futtassa a következő parancsot a frissítések az adattárba való leküldéséhez. A GitHub Actions munkafolyamat a frissítés miatt aktiválódik.

    azd pipeline config    
    
  2. A böngészőben nyissa meg a projekt GitHub-adattárát.

  3. Válassza a Műveletek lehetőséget a munkafolyamat futtatásának megtekintéséhez.

Clean up resources

Ha már nincs szüksége a cikkben létrehozott erőforrásokra, futtassa a következő parancsot:

azd down

Kapcsolódó információk

Segítség kérése

Ha tudni szeretné, hogyan nyújthat be hibát, kérhet segítséget, vagy javasolhat új funkciót az Azure Developer CLI-hez, látogasson el a hibaelhárítási és támogatási oldalra.

További lépések