Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez az oktatóanyag-sorozat bemutatja, hogyan tárolózhat egy Python-webalkalmazást, majd futtathatja helyileg, vagy üzembe helyezheti az Azure App Service-ben. Az App Service Web App for Containers lehetővé teszi, hogy a tárolók létrehozására összpontosítson anélkül, hogy egy mögöttes tárolóvezénylő kezelésével és karbantartásával kellene foglalkoznia. Webalkalmazások létrehozásakor az Azure App Service jó választás az első lépések tárolókkal való végrehajtásához. Ez a tároló-webalkalmazás egy helyi MongoDB-példányt vagy az Azure Cosmos DB-hez készült MongoDB-t használhatja az adatok tárolásához. A tárolók Azure-ban való használatáról további információt az Azure-tárolóbeállítások összehasonlítása című témakörben talál.
Ebben az oktatóanyagban Ön:
Hozzon létre, majd futtasson helyileg egy Docker-tárolót. Lásd: Tárolóalapú Python-webalkalmazás helyi létrehozása és futtatása.
Hozzon létre egy Docker-tárolórendszerképet közvetlenül az Azure-ban. Lásd : Tárolóalapú Python-webalkalmazás létrehozása az Azure-ban.
Konfiguráljon egy App Service-t úgy, hogy a Docker-tároló lemezképe alapján hozzon létre webalkalmazást. Lásd : Tárolóalapú Python-alkalmazás üzembe helyezése az App Service-ben.
Az oktatóanyag-sorozat cikkeinek elvégzése után a Python-webalkalmazások folyamatos integrációjának (CI) és folyamatos üzembe helyezésének (CD) alapja lesz az Azure-ba.
A szolgáltatás áttekintése
Az oktatóanyagot támogató szolgáltatásdiagram két környezetet mutat be: a fejlesztői környezetet és az Azure-környezetet. Kiemeli a fejlesztési folyamat során használt legfontosabb Azure-szolgáltatásokat.
Fejlesztői környezet
Az oktatóanyagban a fejlesztői környezetet támogató összetevők a következők:
Helyi fejlesztési rendszer: A Docker-tároló kódolásához, létrehozásához és teszteléséhez használt személyes számítógép.
Docker Containerization: A Docker egy hordozható tárolóba csomagolja az alkalmazást és annak függőségeit.
Fejlesztői eszközök: Tartalmaz egy kódszerkesztőt és a szoftverfejlesztéshez szükséges egyéb eszközöket.
Helyi MongoDB-példány: Egy helyi MongoDB-adatbázis, amely a fejlesztés során adattárolásra használható.
MongoDB-kapcsolat: Hozzáférés a helyi MongoDB-adatbázishoz egy kapcsolati sztringen keresztül.
Azure-környezet
Az oktatóanyagban az Azure-környezetet támogató összetevők a következők:
-
- Az Azure App Service-ben a Web App for Containers a Docker tárolótechnológiáját használja a beépített rendszerképek és az egyéni rendszerképek tárolóinak tárolására a Docker használatával.
- A Web App for Containers az Azure Container Registry (ACR) webhookját használja, hogy értesítést kapjon az új rendszerképekről. Amikor egy új képfájlt feltöltenek a tárolóba, a webhook értesítés elindítja az App Service-t, hogy lekérje a frissítést és újraindítsa az alkalmazást.
-
Az Azure Container Registry lehetővé teszi a Docker-rendszerképek és azok összetevőinek azure-beli tárolását és kezelését. Ez egy, az Azure-beli üzemelő példányok közelében található nyilvántartást biztosít, amely lehetőséget nyújt a hozzáférés szabályozására a Microsoft Entra-csoportok és -engedélyek használatával.
Ebben az oktatóanyagban az Azure Container Registry a beállításjegyzék forrása, de a Docker Hubot vagy egy privát regisztrációs adatbázist is használhat kisebb módosításokkal.
Azure Cosmos DB MongoDB-hez való
Az Azure Cosmos DB for MongoDB egy NoSQL-adatbázis, amelyet ebben az oktatóanyagban az adattároláshoz használunk.
A tárolóalapú alkalmazás egy kapcsolati sztring használatával csatlakozik az Azure Cosmos DB-erőforráshoz, amely környezeti változóként van tárolva, és amelyet az alkalmazás biztosít.
Hitelesítés
Ebben az oktatóanyagban létrehoz egy Docker-rendszerképet helyileg vagy az Azure-ban, majd üzembe helyezi azt az Azure App Service-ben. Az App Service lekéri a konténer képet egy Azure Container Registry tárházból.
A rendszer által hozzárendelt felügyelt identitást használ az App Service, hogy biztonságosan lekérje a képeket az adattárból. Ez a felügyelt identitás engedélyeket ad a webalkalmazásnak más Azure-erőforrásokkal való interakcióhoz, így nincs szükség explicit hitelesítő adatokra. Ebben az oktatóanyagban a felügyelt identitás az App Service telepítése során kerül konfigurálásra egy regisztrátori tárolókép használatára.
Az oktatóanyag-minta webalkalmazás a MongoDB használatával tárolja az adatokat. A mintakód egy kapcsolati sztringen keresztül csatlakozik az Azure Cosmos DB-hez.
Előfeltételek
Az oktatóanyag elvégzéséhez a következőkre van szüksége:
Egy Azure-fiók, ahol létrehozhatja a következőt:
- Azure Container Registry
- Azure App Service
- Azure Cosmos DB a MongoDB-hez (vagy hozzáférés egy megfelelőhöz). Azure Cosmos DB for MongoDB-adatbázis létrehozásához kövesse az oktatóanyag 2. részében szereplő lépéseket.
A Visual Studio Code vagy az Azure CLI a választott eszköztől függően. Ha Visual Studio Code-ot használ, szüksége lesz a Docker-bővítményre és az Azure App Service-bővítményre.
Ezek a Python-csomagok:
- MongoDB Shell (mongosh) a MongoDB-hez való csatlakozáshoz.
- Flask vagy Django webes keretrendszerként.
A Docker helyileg van telepítve.
Mintaalkalmazás
Ennek az oktatóanyagnak a végeredménye egy, az Azure-ban üzembe helyezett és futó étterem-felülvizsgálati alkalmazás, amely az alábbi képernyőképhez hasonlóan néz ki.
Ebben az oktatóanyagban létrehoz egy Python étterem-felülvizsgálati alkalmazást, amely a MongoDB-t használja az adattároláshoz. A PostgreSQL-t használó példaalkalmazások esetében lásd : Flask-webalkalmazás létrehozása és üzembe helyezése az Azure-ban felügyelt identitással.