Nasazení azure Cosmos DB a Azure App Service s využitím webové aplikace z GitHub pomocí Azure Resource Manager šablony

PLATÍ PRO: SQL API

V tomto kurzu se ukáže, jak provést nasazení webové aplikace bez dotykového ovládání, které se při prvním spuštění připojí k Azure Cosmos DB, aniž byste museli vyjmout a vložit jakékoli informace o připojení z Azure Cosmos DB do nebo do nastavení aplikace Azure App Services v appsettings.json Azure Portal. Všechny tyto akce se provádí pomocí Azure Resource Manager šablony v rámci jedné operace. V tomto příkladu nasadíme ukázku todo služby Azure Cosmos DB z kurzu webové aplikace.

Resource Manager šablony jsou poměrně flexibilní a umožňují vytvořit složitá nasazení napříč libovolnou službou v Azure. To zahrnuje pokročilé úlohy, jako je nasazení aplikací z GitHub a vložení informací o připojení Azure App Service nastavení aplikace v Azure Portal. Tento kurz vám ukáže, jak provést následující akce pomocí jedné Resource Manager šablony.

  • Nasaďte účet azure Cosmos.
  • Nasaďte plán Azure App Service hostování.
  • Nasaďte Azure App Service.
  • Vloží koncový bod a klíče z účtu azure Cosmos do nastavení App Service aplikace v Azure Portal.
  • Nasaďte webovou aplikaci z GitHub úložiště do App Service.

Výsledné nasazení má plně funkční webovou aplikaci, která se může připojit k Azure Cosmos DB bez nutnosti vyjmout a vložit adresu URL koncového bodu služby Azure Cosmos DB nebo ověřovací klíče z Azure Portal.

Požadavky

Tip

I když tento kurz předpokládá předchozí zkušenosti s šablonami Azure Resource Manager nebo JSON, pokud chcete upravit odkazované šablony nebo možnosti nasazení, je potřeba mít o každé z těchto oblastí potřebné znalosti.

Krok 1: Nasazení šablony

Nejprve výběrem tlačítka Deploy to Azure (Nasadit do Azure) níže otevřete Azure Portal a vytvořte vlastní nasazení. Šablonu šablony pro rychlý Azure Resource Manager Azure si také můžete prohlédnout v galerii šablon Azure pro rychlý start.

Nasazení do Azure

V okně Azure Portal předplatné, do které se má nasadit, a vyberte nebo vytvořte novou skupinu prostředků. Pak vyplňte následující hodnoty.

Snímek obrazovky s uživatelským rozhraním pro nasazení šablony

  • Oblast – to vyžaduje Resource Manager. Zadejte stejnou oblast, kterou používá parametr umístění, ve které se nacházejí vaše prostředky.
  • Název aplikace – Tento název používají všechny prostředky pro toto nasazení. Nezapomeňte zvolit jedinečný název, abyste se vyhnuli konfliktům s existujícími účty Azure Cosmos DB a App Service účty.
  • Umístění – oblast, ve které jsou vaše prostředky nasazené.
  • App Service plán – App Service cenovou úroveň plánu.
  • App Service instance plánu – počet pracovních pracovníků pro plán služby App Service.
  • Adresa URL úložiště – úložiště webové aplikace na GitHub.
  • Větev – větev pro GitHub úložiště.
  • Název databáze – název Cosmos Azure.
  • Název kontejneru – název kontejneru Cosmos Azure.

Po vyplnění hodnot výběrem tlačítka Vytvořit spusťte nasazení. Dokončení tohoto kroku by mělo trvat 5 až 10 minut.

Tip

Šablona neověřuje, že název Azure App Service a název účtu azure Cosmos zadané v šabloně jsou platné a dostupné. Před odesláním nasazení důrazně doporučujeme ověřit dostupnost názvů, které plánujete zadat.

Krok 2: Prozkoumání prostředků

Zobrazení nasazených prostředků

Jakmile šablona prostředky nasadí, uvidíte je teď ve své skupině prostředků.

Skupina prostředků

Zobrazení Cosmos DB a klíčů

Dále otevřete účet Azure Cosmos na portálu. Následující snímek obrazovky ukazuje koncový bod a klíče pro účet Cosmos Azure.

Cosmos Klíče

Zobrazení klíčů Azure Cosmos DB v nastavení aplikace

Dále přejděte na Azure App Service ve skupině prostředků. Kliknutím na kartu Konfigurace zobrazíte stránku Nastavení pro App Service. Vlastnost Application Nastavení obsahuje účet Cosmos DB a hodnoty primárního klíče potřebné pro připojení k Cosmos DB a také názvy databází a kontejnerů předané z nasazení šablony.

Nastavení aplikace

Zobrazení webové aplikace v Deployment Center

Pak přejděte na Deployment Center pro App Service. Tady uvidíte, že úložiště odkazuje na GitHub úložiště předané do šablony. Také níže uvedený stav označuje Success(Active), což znamená, že aplikace byla úspěšně nasazena a spuštěna.

Deployment Center

Spuštění webové aplikace

Kliknutím na Procházet v horní části Deployment Center otevřete webovou aplikaci. Webová aplikace se otevře na domovské obrazovce. Klikněte na Vytvořit nový, do polí zadejte nějaká data a klikněte na Uložit. Výsledná obrazovka zobrazuje data uložená do Cosmos DB.

Domovská obrazovka

Krok 3: Jak to funguje

Aby to fungovalo, jsou potřeba tři prvky.

Čtení nastavení aplikace za běhu

Nejprve musí aplikace požádat o koncový bod Cosmos DB ve třídě ve webové aplikaci Startup ASP.NET MVC. Ukázka Cosmos DB To Do spustit místně, kde můžete zadat informace o připojení do appsettings.json. Po nasazení se ale tento soubor nasadí s aplikací. Pokud tyto řádky červeně nemohou přistupovat k nastavení z appsettings.json, zkusí to na webu Application Nastavení v Azure App Service.

Snímek obrazovky ukazuje metodu s několika řetězcovou proměnnou označenou červeně, včetně databaseName, containerName, account a key.

Použití speciálních funkcí správy prostředků Azure

Aby byly tyto hodnoty k dispozici pro aplikaci při nasazení, může šablona Azure Resource Manager požádat o tyto hodnoty z účtu Cosmos DB pomocí speciálních funkcí Azure Resource Managementu, včetně referenčních a listKeys, které vezměte hodnoty z účtu Cosmos DB a vloží je do hodnot nastavení aplikace s názvy klíčů, které odpovídají tomu, co se používá ve výše uvedené aplikaci ve formátu {section:key}. Například, CosmosDb:Account.

Klíče šablon

Nasazení webových aplikací z GitHub

Nakonec musíme nasadit webovou aplikaci z GitHub do App Service. To se provádí pomocí následujícího formátu JSON. Typ a název tohoto prostředku je třeba pečlivě zadat dvěma způsoby. Hodnoty "type": "sourcecontrols" vlastností "name": "web" a jsou pevné a neměly by se měnit.

Nasazení z GitHub

Další kroky

Gratulujeme! Nasadili jste Azure Cosmos DB, Azure App Service a ukázkovou webovou aplikaci, která automaticky obsahuje informace o připojení potřebné pro připojení k Cosmos DB, a to vše v jedné operaci a bez nutnosti vyjmutí a vložení citlivých informací. Tuto šablonu můžete použít jako výchozí bod a upravit ji tak, aby nasazování vlastních webových aplikací bylo stejné.