Megosztás a következőn keresztül:


Az Azure Developer CLI-környezetek áttekintése

Az Azure Developer CLI (azd) lehetővé teszi a projektek több üzembehelyezési környezetének kezelését, így a konfigurációk külön-külön maradnak a fejlesztéshez, teszteléshez és éles környezethez. Ez a cikk alapvető fogalmakat ismertet azzal kapcsolatban, hogyan kezelheti a fejlesztési és üzembe helyezési folyamatot környezetekkel.

Mik azok a környezetek?

Az Azure Developer CLI (azd) környezetei az alkalmazás üzembe helyezésének nevesített konfigurációi, például dev, test vagy prod. A különböző környezetek különböző értékekkel konfigurálhatók. A környezetek számos fontos célt szolgálnak:

  • Elkülönítés: A fejlesztési, tesztelési és a termelési környezetek elkülönítése.
  • Konfigurációkezelés: Az egyes környezetek különböző beállításainak fenntartása.
  • Együttműködés: Lehetővé teszi a csapattagok számára, hogy saját környezetükkel dolgozhassanak.
  • Erőforrás-szervezet: Azure-erőforrások csoportosítása és kiépítése környezet szerint.
  • Reprodukálhatóság: Konzisztens üzembe helyezés biztosítása különböző szakaszokban.

Minden környezet saját Azure-erőforráscsoportot és konfigurációs beállításokat használ. Ez a környezetelkülönítés segít megakadályozni, hogy az egyik környezet változásai másokra is hatással legyenek.

Környezetstruktúra és konfiguráció

Azure Developer CLI (azd) környezetek a projekt könyvtárszerkezetében találhatók.

├── .azure                          [Created when you run azd init or azd up]
│   ├── <environment-name-1>        [Directory for environment-specific configurations]
│   │   ├── .env                    [Environment variables for this environment]
│   │   └── config.json             [Additional configuration parameters for this environment]
│   ├── <environment-name-2>        [Another environment]
│   │   ├── .env                    
│   │   └── config.json
│   └── config.json                 [Global azd configuration]

A struktúra fő összetevői a következők:

  • .azure könyvtár: Az összes környezeti konfiguráció gyökérkönyvtára. Alapértelmezés szerint a .gitignore fájl miatt ki van zárva a forrásvezérlésből.
  • Környezetspecifikus könyvtárak: A környezetekről elnevezett könyvtárak, például dev: , testprod.
  • .env fájl: Az alkalmazás által és az üzembe helyezés során használt környezetspecifikus változókat tartalmazza.
  • config.json: Az olyan beállítások kezelésére szolgál, amelyek befolyásolják a azd parancsok viselkedését és funkcióit. Ezt a fájlt nem közvetlenül a végfelhasználók használhatják.

Környezetnevek

A környezet elnevezése általában az alábbi mintákat követi:

  • Csapatprojektek: <project-name-[dev/int/prod]>
  • Személyes projektek: <personal-unique-alias-[dev/int/prod]>

Az elnevezési konvenciók nincsenek azd által érvényesítve, és a felhasználó által konfigurálhatók.

Környezeti változók

Az Azure Developer CLI környezeti változói lehetővé teszik olyan konfigurációs beállítások tárolását, amelyek hatással lehetnek a környezetekre, és eltérőek lehetnek. Az Azure Developer CLI-parancsok futtatásakor ezek a változók a következőkre használhatók:

  • Konfigurálja az alkalmazásbeállításokat, például az Azure-szolgáltatások végpontjait.
  • Adja meg az infrastruktúra paramétereit a kiépítési folyamat befolyásolásához.

A .env fájl a következő változókat tartalmazza szabványos formátumban:

AZURE_ENV_NAME=dev
AZURE_LOCATION=eastus
AZURE_SUBSCRIPTION_ID=00000000-0000-0000-0000-000000000000
AZURE_RESOURCE_GROUP=rg-dev-12345
SERVICE_WEB_HOSTNAME=web-dev-12345.azurewebsites.net
SERVICE_API_HOSTNAME=api-dev-12345.azurewebsites.net

A gyakori környezeti változók a következők:

Változó Leírás
AZURE_ENV_NAME Az aktuális környezet neve
AZURE_LOCATION Azure-régió, ahol az erőforrások üzembe vannak helyezve
AZURE_SUBSCRIPTION_ID A környezethez használt Azure-előfizetés azonosítója
AZURE_RESOURCE_GROUP A környezet erőforráscsoportjának neve

Jótanács

Egyéb gyakori környezeti változókért és szolgáltatásspecifikus példákért tekintse meg a Környezeti változók dokumentációját .

Környezeti változók használata esetén:

  • Kerülje a .env fájlok feltöltését a verziókezelő rendszerbe. Ha a környezetkonfigurációt meg kell őrizni vagy meg kell osztani, a felhasználóknak távoli környezeteket kell használniuk.
  • Konzisztens elnevezés használata környezetek között.
  • azd env set A parancs használatával biztonságosan frissítheti a változókat.

Figyelmeztetés

Soha ne tároljon titkos kulcsokat egy Azure Developer CLI-fájlban .env . Ezek a fájlok egyszerűen megoszthatók vagy másolhatók jogosulatlan helyekre, vagy be lehet jelentkezni a forrásvezérlőbe. Védett vagy titkos megoldásokhoz használjon olyan szolgáltatásokat, mint az Azure Key Vault vagy az Azure Role Based Access Control (RBAC).

Más keretrendszerkörnyezetek összehasonlítása

Számos programozási keretrendszer és eszköz, például a Node.js, a Django vagy a React fájlokat használ .env a konfigurációhoz. Bár az Azure Developer CLI (azd) fájlokat is használ .env , fontos különbségek vannak:

Fogalom Azure Developer CLI .env Keretrendszerfájlok .env
Helyszín Tárolt .azure/<environment-name>/.env Általában a projekt gyökérkönyvtárában tárolva
Környezettámogatás Több felhasználó által definiált környezet (dev, test, prod) támogatása Gyakran manuális fájlváltási vagy elnevezési konvenciókra (.env.development, .env.production) van szükség
Betöltési mechanizmus Automatikusan betöltve a azd parancsok által Általában explicit betöltést igényel az alkalmazáskódban vagy a buildszkriptekben
Integráció Mélyen integrálva az Azure-szolgáltatásokkal és az erőforrás-kiépítéssel Általános célú konfiguráció, nem Azure-specifikus
Változókezelés azd env parancsokkal vezérelt Általában manuálisan vagy egyéni szkriptekkel szerkesztve

Bár mindkettő hasonló célt szolgál, az Azure Developer CLI megközelítése .env több üzembehelyezési környezet és Azure-erőforrás kezelésére tervezett struktúrát és eszközt ad hozzá.

Megjegyzés:

Ha a projekt már keretrendszerspecifikus .env fájlokat használ, mindkét konfigurációs rendszert ütközések nélkül tarthatja. azd a környezeti változók felülbírálják bizonyos műveletek azonos nevű rendszerkörnyezeti változóit.

Következő lépések