Azure Resource Manager şablonu kullanarak GitHub bir web uygulamasıyla Azure Cosmos DB ve Azure App Service dağıtma

UYGULANDıĞı YER: SQL API

bu öğreticide, Azure portal bağlantı bilgilerini Azure Cosmos DB ' dan appsettings.json veya Azure App Services uygulama ayarlarına kesip yapıştırmaya gerek kalmadan ilk çalıştırmada Azure Cosmos DB bağlanan bir web uygulamasının "touch" dağıtımını nasıl yapabileceğiniz gösterilmektedir. Tüm bu eylemler tek bir işlemde bir Azure Resource Manager şablonu kullanılarak gerçekleştirilir. buradaki örnekte, Azure Cosmos DB ToDo örneğini bir Web uygulaması öğreticidendağıtacağız.

Kaynak Yöneticisi şablonlar, oldukça esnektir ve Azure 'daki herhangi bir hizmette karmaşık dağıtımlar oluşturmaya olanak sağlar. bu, GitHub ve ekleme bağlantı bilgilerini uygulama Azure portal Azure App Service uygulama ayarlarına dağıtmak gibi gelişmiş görevleri içerir. Bu öğretici, tek bir Kaynak Yöneticisi şablonu kullanarak aşağıdaki şeyleri nasıl yapılacağını gösterir.

  • Azure Cosmos hesabını dağıtın.
  • Azure App Service barındırma planı dağıtın.
  • Azure App Service dağıtın.
  • uç noktayı ve anahtarları Azure Cosmos hesabından Azure portal App Service uygulama ayarlarına ekleyin.
  • bir GitHub deposundan bir web uygulamasını App Service dağıtın.

elde edilen dağıtımda, Azure Cosmos DB uç nokta URL 'sini veya Azure portal kimlik doğrulama anahtarlarını kesip yapıştırmaya gerek kalmadan Azure Cosmos DB bağlanabilir tam işlevli bir web uygulaması vardır.

Önkoşullar

İpucu

Bu öğretici Azure Resource Manager şablonları veya JSON ile önceki deneyimle karşılaşmadığından, başvurulan şablonları veya dağıtım seçeneklerini değiştirmek ister, bu alanların her biri için bilgi gereklidir.

1. Adım: şablonu dağıtma

İlk olarak, bir özel dağıtım oluşturmak için Azure portal açmak üzere aşağıdaki Azure 'A dağıt düğmesini seçin. Azure hızlı başlangıç şablonları galerisinden Azure Resource Manager şablonunu da görüntüleyebilirsiniz

Azure’a dağıtın

Azure portal bir kez, dağıtmak istediğiniz aboneliği seçin ve yeni bir kaynak grubu seçin veya oluşturun. Ardından aşağıdaki değerleri girin.

Şablon dağıtımı Kullanıcı arabiriminin ekran görüntüsü

  • Bölge -bu Kaynak Yöneticisi gereklidir. Kaynaklarınızın bulunduğu konum parametresi tarafından kullanılan bölgeyi girin.
  • Uygulama adı -bu ad, bu dağıtımın tüm kaynakları tarafından kullanılır. mevcut Azure Cosmos DB ve App Service hesaplarıyla çakışmaları önlemek için benzersiz bir ad seçtiğinizden emin olun.
  • Konum -kaynaklarınızın dağıtıldığı bölge.
  • App Service plan katmanı App Service planının fiyatlandırma katmanı.
  • App Service plan örnekleri -App Service planı için çalışan sayısı.
  • Depo URL 'si -GitHub Web uygulamasına yönelik depo.
  • dal -GitHub deposu için dal.
  • veritabanı adı -Azure Cosmos veritabanı adı.
  • kapsayıcı adı -Azure Cosmos kapsayıcı adı.

Değerleri doldurduktan sonra, dağıtımı başlatmak için Oluştur düğmesini seçin. Bu adımın tamamlanması 5 ila 10 dakika sürer.

İpucu

şablon, şablona girilen Azure App Service adı ve Azure Cosmos hesabı adının geçerli ve kullanılabilir olduğunu doğrulamaz. Dağıtımı göndermeden önce sağlamayı planladığınız adların kullanılabilirliğini doğrulamanız kesinlikle önerilir.

2. Adım: kaynakları araştırma

Dağıtılan kaynakları görüntüleme

Şablon kaynakları dağıttıktan sonra, bunların her birini kaynak grubunuzda görebilirsiniz.

Kaynak Grubu

Cosmos DB uç noktası ve anahtarları görüntüleme

ardından, portalda Azure Cosmos hesabını açın. aşağıdaki ekran görüntüsünde, bir Azure Cosmos hesabı için uç nokta ve anahtarlar gösterilmektedir.

Cosmos Belirlenmesine

uygulama ayarlarındaki Azure Cosmos DB anahtarlarını görüntüleme

Sonra kaynak grubundaki Azure App Service gidin. App Service için uygulama Ayarlar görüntülemek için yapılandırma sekmesine tıklayın. uygulama Ayarlar, Cosmos DB bağlanmak için gereken Cosmos DB hesabı ve birincil anahtar değerlerini ve şablon dağıtımından geçirilen veritabanı ve kapsayıcı adlarını içerir.

Uygulama Ayarları

Web uygulamasını dağıtım merkezi 'nde görüntüle

Daha sonra App Service için dağıtım merkezine gidin. burada, şablona geçirilen GitHub deposuna yönelik depo noktalarını görürsünüz. Ayrıca, aşağıdaki durum, uygulamanın başarıyla dağıtıldığını ve başlatıldığını belirten başarılı (etkin) anlamına gelir.

Dağıtım Merkezi

Web uygulamasını çalıştırma

Web uygulamasını açmak için dağıtım merkezi 'nin en üstündeki Araştır ' a tıklayın. Web uygulaması, giriş ekranına açılır. Yeni oluştur ' a tıklayın ve alanlara bazı veriler girip kaydet ' e tıklayın. elde edilen ekranda Cosmos DB kaydedilen veriler gösterilir.

Ana ekran

3. Adım: nasıl çalışır?

Bunun çalışması için gereken üç öğe vardır.

Çalışma zamanında uygulama ayarları okunuyor

ilk olarak, uygulamanın Startup ASP.NET MVC web uygulamasındaki sınıfında Cosmos DB uç noktası ve anahtarı istemesi gerekir. Cosmos DB To Do örnek , üzerine appsettings.jsbağlantı bilgilerini girebileceğiniz yerel olarak çalıştırılabilir. Ancak dağıtıldığında, bu dosya uygulamayla birlikte dağıtılır. kırmızı renkte bu satırlar, appsettings.js'daki ayarlara erişemeyecektir Azure App Service içindeki uygulama Ayarlar dener.

Ekran görüntüsü databaseName, Kapsayıcıadı, hesap ve anahtar dahil olmak üzere kırmızı renkte işaretlenmiş birkaç dize değişkeni içeren bir yöntemi gösterir.

Özel Azure Kaynak yönetimi işlevlerini kullanma

bu değerlerin dağıtıldığında uygulama için kullanılabilir olması için, Azure Resource Manager şablonu, Cosmos DB hesabından değerleri alan ve uygulama ayarları değerlerine, bu değerleri bir ' {section: key} ' biçiminde yukarıdaki uygulamada kullanılanlarla eşleşen anahtar adlarıyla eklemek gibi özel Azure kaynak yönetimi işlevleri kullanarak Cosmos DB hesabından bu değerleri isteyebilir. Örneğin, CosmosDb:Account.

Şablon anahtarları

GitHub Web Apps dağıtma

son olarak, web uygulamasını GitHub App Service ' dan dağıtmaları gerekir. Bu işlem aşağıdaki JSON kullanılarak yapılır. Bu kaynağa dikkat etmeniz gereken iki şey, bu kaynağın türü ve adıdır. Hem "type": "sourcecontrols" hem de "name": "web" özellik değerleri sabit kodludur ve değiştirilmemelidir.

GitHub dağıtma

Sonraki adımlar

Tebrikler! Azure Cosmos DB, Azure App Service ve bir örnek web uygulamasını, tek bir işlemde Cosmos DB bağlanmak için gereken bağlantı bilgilerini otomatik olarak ve gizli bilgileri kesip yapıştırmaya gerek kalmadan dağıttık. Bu şablonu bir başlangıç noktası olarak kullanarak, kendi web uygulamalarınızı aynı şekilde dağıtmak için bunu değiştirebilirsiniz.