App Service için uygulama dağıtma
Azure App Service Azure 'un web barındırma platformudur. Bir Web uygulamasını Azure App Service dağıtmak, el ile veya otomatik bir işlem tarafından yapılabilir. Kılavuzun bu bölümü, komut satırını kullanarak el ile veya komut dosyası tarafından tetiklenebilecek veya Visual Studio kullanılarak el ile tetiklenen dağıtım yöntemlerini açıklar.
Bu bölümde, aşağıdaki görevleri yerine getirirsiniz:
- Örnek uygulamayı indirin ve derleyin.
- Azure Cloud Shell kullanarak Azure App Service bir Web uygulaması oluşturun.
- Git kullanarak örnek uygulamayı Azure 'a dağıtın.
- Visual Studio kullanarak uygulamada bir değişiklik dağıtın.
- Web uygulamasına bir hazırlama yuvası ekleyin.
- Hazırlama yuvasına bir güncelleştirme dağıtın.
- Hazırlama ve üretim yuvalarını değiştirin.
Uygulamayı indirme ve test etme
bu kılavuzda kullanılan uygulama, önceden oluşturulmuş bir ASP.NET Core uygulaması, basit bir akış okuyucusu. bu Razor , bir Microsoft.SyndicationFeed.ReaderWriter RSS/Atom akışı almak ve haber öğelerini bir listede göstermek için apı kullanan bir ASP.NET Core Pages uygulamasıdır.
Kodu gözden geçirmeniz ücretsizdir, ancak bu uygulamayla ilgili özel bir şey olmadığını anlamak önemlidir. bu, tanım amaçları için yalnızca basit bir ASP.NET Core uygulamasıdır.
Bir komut kabuğundan kodu indirin, projeyi derleyin ve aşağıdaki gibi çalıştırın.
Not
Linux/macOS kullanıcıları, ters eğik çizgi () yerine eğik çizgi () kullanarak yollar için uygun değişiklikleri yapmalıdır / \ . *
Kodu yerel makinenizde bir klasöre kopyalayın.
git clone https://github.com/dotnet-architecture/simple-feed-reader/Çalışma klasörünüzü, oluşturulan basit akış okuyucusu klasörü ile değiştirin.
cd .\simple-feed-reader\SimpleFeedReaderPaketleri geri yükleyin ve çözümü oluşturun.
dotnet buildUygulamayı çalıştırın.
dotnet run
Bir tarayıcıyı açın ve
http://localhost:5000dizinine gidin. Uygulama, bir dağıtım akışı URL 'SI yazabilir veya yapıştırmanıza ve haber öğelerinin bir listesini görüntülemenize olanak sağlar.
Uygulamanın doğru şekilde çalışmaya başladıktan sonra + komut kabuğu 'nda CTRL C tuşuna basarak kapatın.
Azure App Service Web uygulaması oluşturma
Uygulamayı dağıtmak için bir App Service Web uygulamasıoluşturmanız gerekir. Web uygulaması oluşturulduktan sonra Git kullanarak yerel makinenizden buna dağıtırsınız.
Azure Cloud Shell'de oturum açın. Note: ilk kez oturum açtığınızda, Cloud Shell yapılandırma dosyaları için bir depolama hesabı oluşturmak isteyip istemediğinizi sorar. Varsayılanları kabul edin veya benzersiz bir ad sağlayın.
Aşağıdaki adımlar için Cloud Shell kullanın.
a. Web uygulamanızın adını depolamak için bir değişken bildirin. Ad, varsayılan URL 'de kullanılmak üzere benzersiz olmalıdır.
$RANDOMAdı oluşturmak için bash işlevinin kullanılması, benzersizliği garanti eder ve biçimde sonuçlanırwebappname99999.webappname=mywebapp$RANDOMb. Bir kaynak grubu oluşturun. Kaynak grupları, Azure kaynaklarını bir grup olarak yönetilecek şekilde toplamanız için bir yol sağlar.
az group create --location centralus --name AzureTutorialazKomut, Azure CLI'yı çağırır. CLı yerel olarak çalıştırılabilir, ancak Cloud Shell kullanılması zaman ve yapılandırmayı kaydeder.c. S1 katmanında bir App Service planı oluşturun. App Service planı, aynı fiyatlandırma katmanını paylaşan Web Apps 'in bir gruplandırmasıdır. S1 katmanı ücretsizdir, ancak hazırlama yuvaları özelliği için gereklidir.
az appservice plan create --name $webappname --resource-group AzureTutorial --sku S1d. Aynı kaynak grubundaki App Service planını kullanarak Web uygulaması kaynağını oluşturun.
az webapp create --name $webappname --resource-group AzureTutorial --plan $webappnamee. Dağıtım dalını yapılandırmada olarak ayarlayın
mainappsettings.az webapp config appsettings set --name $webappname --resource-group AzureTutorial --settings DEPLOYMENT_BRANCH=mainf. Dağıtım kimlik bilgilerini ayarlayın. Bu dağıtım kimlik bilgileri, aboneliğinizdeki tüm Web uygulamaları için geçerlidir. Kullanıcı adında özel karakterler kullanmayın.
az webapp deployment user set --user-name REPLACE_WITH_USER_NAME --password REPLACE_WITH_PASSWORDörneğin: Web uygulamasını yerel git 'ten dağıtımları kabul edecek şekilde yapılandırın ve Git DAĞıTıM URL'sini görüntüleyin. Başvuru için bu URL 'yi daha sonra dikkate alın.
echo Git deployment URL: $(az webapp deployment source config-local-git --name $webappname --resource-group AzureTutorial --query url --output tsv)h. Web uygulaması URL 'sini görüntüleyin. Boş Web uygulamasını görmek için bu URL 'ye gidin. Başvuru için bu URL 'yi daha sonra dikkate alın.
echo Web app URL: http://$webappname.azurewebsites.netYerel makinenizde bir komut kabuğu kullanarak, Web uygulamasının proje klasörüne gidin (örneğin, .\Simple-Feed-reader\simplefeedreader). Dağıtım URL 'sine göndermek için git 'i ayarlamak üzere aşağıdaki komutları yürütün:
a. Uzak URL 'YI yerel depoya ekleyin.
git remote add azure-prod GIT_DEPLOYMENT_URLb. Yerel varsayılan dalı (ana) Azure-üretim uzak 'nın dağıtım dalına (ana) gönderin.
git push azure-prod mainDaha önce oluşturduğunuz dağıtım kimlik bilgileri istenir. Komut kabuğu 'ndaki çıktıyı gözlemleyin. Azure, ASP.NET Core uygulamasını uzaktan oluşturur.
Bir tarayıcıda, Web UYGULAMASı URL 'sine gidin ve uygulamanın oluşturulup dağıtıldığını aklınızda edin. İle yerel git deposuna ek değişiklikler uygulanabilir
git commit. Bu değişiklikler, önceki komutla Azure 'a gönderilirgit push.
Visual Studio ile dağıtım
Not
bu bölüm yalnızca Windows için geçerlidir. Linux ve macOS kullanıcıları aşağıdaki adım 2 ' de açıklanan değişikliği yapması gerekir. Dosyayı kaydedin ve yerel depoya ile değişikliği yürütün git commit . Son olarak, değişikliği git push ilk bölümde olduğu gibi ile birlikte gönderin. *
Uygulama, komut kabuğundan zaten dağıtıldı. uygulamaya bir güncelleştirme dağıtmak için Visual Studio tümleşik araçlarını kullanalım. Visual Studio arka planda, komut satırı araçları ile aynı şeyi gerçekleştirir, ancak Visual Studio tanıdık kullanıcı arabirimi içinde.
Visual Studio ' de Simplefeedreader. sln ' i açın.
Çözüm Gezgini, Pages\ındex.cshtml dosyasını açın.
<h2>Simple Feed Reader</h2>Olarak değiştirin<h2>Simple Feed Reader - V2</h2>.-
-
- Uygulamayı derlemek için CTRL SHIFT B tuşlarına basın.
-
Çözüm Gezgini, projeye sağ tıklayın ve Yayımla' ya tıklayın.

Visual Studio yeni bir App Service kaynağı oluşturabilir, ancak bu güncelleştirme mevcut dağıtım üzerinden yayımlanacak. Bir yayımlama hedefi seç iletişim kutusunda, sol taraftaki listeden App Service ' yi seçin ve ardından Varolanı Seç' i seçin. Yayımla’ya tıklayın.
App Service iletişim kutusunda, Azure aboneliğinizi oluşturmak Için kullanılan Microsoft veya kuruluş hesabının sağ üst köşede görüntülendiğini doğrulayın. Aksi takdirde, açılan eklentiye tıklayın ve ekleyin.
Doğru Azure aboneliğinin seçili olduğunu onaylayın. Görünüm Için kaynak grubu' nu seçin. AzureTutorial kaynak grubunu genişletin ve ardından mevcut Web uygulamasını seçin. Tamam'a tıklayın.

Visual Studio derlemek ve Azure'a dağıtmak için. Web uygulaması URL'sini açın. Öğe değişikliğinin <h2> canlı olduğunu doğrulama.

Dağıtım yuvaları
Dağıtım yuvaları, üretimde çalışan uygulamayı etkilemeden değişikliklerin hazırlamayı destekler. Uygulamanın aşamalı sürümü kalite güvencesi ekibi tarafından doğrulandıktan sonra üretim ve hazırlama yuvaları değiştirilebilir. Hazırlamada uygulama bu şekilde üretime yükseltildi. Aşağıdaki adımlar bir hazırlama yuvası oluşturun, bazı değişiklikleri dağıtın ve doğrulamadan sonra hazırlama yuvanızı üretimle değiştirin.
Oturum açmadıysanız Azure Cloud Shelloturum açma.
Hazırlama yuvanızı oluşturun.
a. hazırlama adıyla bir dağıtım yuvası oluşturun.
az webapp deployment slot create --name $webappname --resource-group AzureTutorial --slot stagingb. Yapılandırmada dağıtım
maindalı'nın olarakappsettingsayarlayın.az webapp config appsettings set --name $webappname --resource-group AzureTutorial --slot staging --settings DEPLOYMENT_BRANCH=mainc. Hazırlama yuvanızı yerel Git'te dağıtımı kullanmak ve hazırlama dağıtım URL'sini almak için yapılandırma. Bu URL'yi daha sonra başvuru için not edin.
echo Git deployment URL for staging: $(az webapp deployment source config-local-git --name $webappname --resource-group AzureTutorial --slot staging --query url --output tsv)d. Hazırlama yuvasının URL'sini görüntüler. Boş hazırlama yuvalarını görmek için URL'ye göz atma. Bu URL'yi daha sonra başvuru için not edin.
echo Staging web app URL: http://$webappname-staging.azurewebsites.netBir metin düzenleyicisinde Visual Studio, öğenin dosyayı okuması ve kaydetmesi için Pages/Index.cshtml
<h2>dosyasını yeniden<h2>Simple Feed Reader - V3</h2>değiştirebilirsiniz.Dosyayı yerel Git deposuna işleyebilirsiniz, Visual Studio'nin Takım Gezgini sayfasındaki Değişiklikler sayfasını kullanın veya yerel makinenin komut kabuğunu kullanarak aşağıdakini girin:
git commit -a -m "upgraded to V3"Yerel makinenin komut kabuğunu kullanarak hazırlama dağıtım URL'sini Git uzak depo olarak ekleyin ve işlenen değişiklikleri itin:
a. Hazırlama için uzak URL'yi yerel Git deposuna ekleyin.
git remote add azure-staging <Git_staging_deployment_URL>b. Yerel varsayılan dalı (ana) azure hazırlama uzak dağıtım dalına ( ana )itin.
git push azure-staging mainAzure uygulamayı derleme ve dağıtma sırasında bekleyin.
V3'ü hazırlama yuvasına dağıtıldığından emin olmak için iki tarayıcı penceresinden açın. Bir pencerede özgün web uygulaması URL'sini seçin. Diğer pencerede hazırlama web uygulaması URL'sini seçin. Üretim URL'si uygulamanın V2'sini sağlar. Hazırlama URL'si uygulamanın V3'lerini sağlar.

Bu Cloud Shell doğrulanmış/hazırlama yuvasıyla üretime değiştirin.
az webapp deployment slot swap --name $webappname --resource-group AzureTutorial --slot stagingİki tarayıcı penceresinde yenileme işlemiyle değiştirmenin olduğunu doğrulayın.

Özet
Bu bölümde aşağıdaki görevler tamamlandı:
- Örnek uygulamayı indirin ve yerleşik olarak indirin.
- Azure Cloud Shell kullanarak Azure App Service Web Uygulaması Azure Cloud Shell.
- Git kullanarak örnek uygulamayı Azure'a dağıttınız.
- Visual Studio kullanarak uygulamada bir değişiklik Visual Studio.
- Web uygulamasına bir hazırlama yuvası eklendi.
- Hazırlama yuvasına bir güncelleştirme dağıtıldı.
- Hazırlama ve üretim yuvalarını değiştirdik.
Sonraki bölümde, Azure Pipelines ile bir DevOps işlem hattı Azure Pipelines.