Sdílet prostřednictvím


Přehled: Kontejnerizovaná webová aplikace v Pythonu v Azure s MongoDB

V této sérii kurzů se dozvíte, jak kontejnerizovat webovou aplikaci v Pythonu a pak ji spustit místně nebo ji nasadit do služby Azure App Service. App Service Web App for Containers umožňuje soustředit se na vytváření kontejnerů, aniž byste se museli starat o správu a údržbu základního orchestrátoru kontejnerů. Při vytváření webových aplikací je služba Azure App Service dobrou volbou pro první kroky s kontejnery. Tato webová aplikace kontejneru může k ukládání dat použít místní instanci MongoDB nebo MongoDB pro Azure Cosmos DB . Další informace o používání kontejnerů v Azure najdete v tématu Porovnání možností kontejneru Azure.

V tomto návodu budete:

Po dokončení článků v této sérii kurzů budete mít základ pro kontinuální integraci (CI) a průběžné nasazování (CD) webové aplikace v Pythonu do Azure.

Přehled služby

Diagram služby podporující tento kurz ukazuje dvě prostředí: vývojové prostředí a prostředí Azure. Zvýrazňuje klíčové služby Azure používané v procesu vývoje.

snímek obrazovky se službami použitými v kurzu – Kontejnerizovaná aplikace Pythonu v Azure.

Vývojářské prostředí

Mezi komponenty podporující vývojářské prostředí v tomto kurzu patří:

  • místního vývojového systému: Osobní počítač používaný pro kódování, sestavování a testování kontejneru Dockeru.

  • kontejnerizace Dockeru: Docker se používá k zabalení aplikace a jejích závislostí do přenosného kontejneru.

  • Vývojové nástroje: Obsahuje editor kódu a další nezbytné nástroje pro vývoj softwaru.

  • místní instance MongoDB: Místní databáze MongoDB užitá pro ukládání dat během vývoje.

  • připojení MongoDB: Přístup k místní databázi MongoDB, který je poskytován prostřednictvím připojovacího řetězce.

Prostředí Azure

Mezi komponenty podporující prostředí Azure v tomto kurzu patří:

  • Azure App Service

    • Ve službě Azure App Service používá Služba Web App for Containers technologii kontejneru Dockeru k zajištění hostování kontejnerů jak integrovaných imagí, tak vlastních imagí pomocí Dockeru.
    • Služba Web App for Containers používá webhook ve službě Azure Container Registry (ACR) k oznámení o nových imagech. Když se do registru nahraje nový obraz, oznámení webhooku aktivuje službu App Service, která stáhne aktualizaci a restartuje aplikaci.
  • Azure Container Registry

    • Azure Container Registry umožňuje ukládat a spravovat image Dockeru a jejich komponenty v Azure. Poskytuje registr umístěný v blízkosti vašich nasazení v Azure, který umožňuje řídit přístup pomocí skupin a oprávnění Microsoft Entra.

    • V tomto kurzu je azure Container Registry zdrojem registru, ale můžete také použít Docker Hub nebo privátní registr s menšími úpravami.

  • Azure Cosmos DB pro MongoDB

    • Azure Cosmos DB pro MongoDB je databáze NoSQL používaná v tomto kurzu pro ukládání dat.

    • Kontejnerizovaná aplikace se připojuje k prostředku Azure Cosmos DB a přistupuje k němu pomocí připojovacího řetězce, který je uložen jako proměnná prostředí a je poskytnut aplikaci.

Autentizace

V tomto kurzu vytvoříte image Dockeru( místně nebo v Azure) a pak ji nasadíte do Služby Azure App Service. App Service načte image kontejneru z úložiště Azure Container Registry.

Aby služba App Service bezpečně načítala obrázky z úložiště, využívá systémem přiřazenou spravovanou identitu. Tato spravovaná identita uděluje webové aplikaci oprávnění k interakci s dalšími prostředky Azure a eliminuje potřebu explicitních přihlašovacích údajů. Pro účely tohoto kurzu se spravovaná identita konfiguruje během instalace služby App Service tak, aby používala image kontejneru registru.

Ukázková webová aplikace kurzu používá k ukládání dat MongoDB. Ukázkový kód se připojí ke službě Azure Cosmos DB prostřednictvím připojovacího řetězce.

Požadavky

K dokončení tohoto kurzu potřebujete:

Ukázková aplikace

Konečným výsledkem tohoto kurzu je aplikace pro kontrolu restaurace nasazená a spuštěná v Azure, která vypadá jako na následujícím snímku obrazovky.

snímek obrazovky ukázkové aplikace vytvořené z kontejnerizované webové aplikace Pythonu použité v kurzu – Kontejnerizovaná aplikace v Pythonu v Azure.

V tomto kurzu vytvoříte aplikaci pro kontrolu restaurace v Pythonu, která využívá MongoDB pro ukládání dat. Ukázkovou aplikaci využívající PostgreSQL najdete v tématu Vytvoření a nasazení webové aplikace Flask do Azure se spravovanou identitou.

Další krok