Alıştırma - Görüntüyü değiştirme ve web uygulamasını yeniden dağıtma
Bu ünitede web uygulaması için sürekli dağıtımı yapılandıracak ve Docker görüntüsünün yer aldığı kayıt defterine bağlanan bir web kancası oluşturacaksınız. Ardından web uygulamasının kaynak kodunda değişiklik yapacak ve görüntüyü yeniden derleyeceksiniz. Örnek web uygulamasını barındıran web sitesini yeniden ziyaret edecek ve en yeni sürümün çalıştırıldığını doğrulayacaksınız.
Dekont
Bu alıştırmada bir Azure Container Registry görevi oluşturulmaz. Bunun yerine, örnek uygulama için Docker görüntüsünü el ile yeniden derleyeceksiniz. Yeni Docker görüntüsü oluşturulduğunda web kancası açılır.
Sürekli dağıtımı yapılandırma ve web kancası oluşturma
Azure portalına dönün ve web uygulamanızı seçin. Web uygulamanız için App Service bölmeniz görüntülenir.
Sol menü bölmesindeki Dağıtım'ın altında Dağıtım Merkezi'ni seçin. Uygulama hizmetiniz (web uygulaması) için Dağıtım Merkezi bölmesi görüntülenir.
Ayarlar sekmesindeki Kayıt defteri ayarları'nın altında Sürekli Dağıtım'ı Açık olarak ayarlayın ve üst menü çubuğunda Kaydet'i seçin. Bu ayar, Container Registry'nin Docker görüntüsünü değiştiğinde web uygulamasını uyarmak için kullanacağı bir web kancası yapılandırır.
Web uygulamasını güncelleştirme ve web kancasını test etme
Azure Cloud Shell'de dotnet/SampleWeb/Pages klasörüne gidin. Bu klasör, web uygulaması tarafından görüntülenen HTML sayfalarının kaynak kodunu içerir.
cd ~/mslearn-deploy-run-container-app-service/dotnet/SampleWeb/Pages
Aşağıdaki komutları çalıştırarak web uygulamasının varsayılan sayfasını (Index.cshtml) döngü denetiminde ek bir öğe bulunan yeni sürümle değiştirin. Bu komutlar uygulamada sürekli geliştirme simülasyonu oluşturur ve döngüye yeni bir sayfa ekler.
mv Index.cshtml Index.cshtml.old mv Index.cshtml.new Index.cshtml
Web uygulamasının görüntüsünü yeniden derlemek ve Container Registry'ye göndermek için sonraki komut kümesini çalıştırın.
<container_registry_name>
değerini kayıt defterinizin adıyla değiştirin. İkinci komutun sonundaki.
karakterini unutmayın. Derlemenin tamamlanmasını bekleyin.cd ~/mslearn-deploy-run-container-app-service/dotnet az acr build --registry <container_registry_name> --image webimage .
Azure portalı giriş sayfasına dönün. En son kaynaklar alanından kapsayıcı kayıt defterinizi seçin. Kapsayıcı kayıt defteri bölmeniz görüntülenir.
Sol menü bölmesindeki Hizmetler'in altında Web kancaları'nı seçin. Kapsayıcı kayıt defteriniz için Web Kancaları bölmesi görüntülenir.
Listedeki tek web kancasını seçin. Kapsayıcı kayıt defteri web kancanız görüntülenir.
Çalıştırdığınız derlemeye ve göndermeye yanıt olarak tetiklenen web kancasının kaydına dikkat edin.
Web uygulamasını yeniden test etme
Tarayıcıda web uygulamanıza dönün. Sekmeyi daha önce kapattıysanız, Azure portalında uygulamanın Genel Bakış sayfasına gidip Gözat'ı seçebilirsiniz. Web uygulaması Container Registry'den yeni görüntüyü yüklerken bir hazırlıksız başlatma gecikmesi olacaktır.
Döngü denetimindeki öğeleri gözden geçirin. Denetimin artık dört sayfa içerdiğine dikkat edin. Yeni sayfa aşağıdaki görüntüye benzer:
Web uygulaması yeni görüntü temelinde otomatik olarak güncelleştirilmiş ve yeniden dağıtılmıştır. Kayıt defterinizdeki web kancası hizmeti web uygulamanıza kapsayıcı görüntüsünün değiştirildiğini bildirerek bir güncelleştirmeyi tetikler.
Azure Cloud Shell'de node/routes klasörüne gidin. Bu klasör, web uygulaması tarafından görüntülenen sayfaları oluşturan kaynak kodu içerir.
cd ~/mslearn-deploy-run-container-app-service/node/routes
Cloud Shell düzenleyicisinde açın
index.js
.code index.js
Düzenleyicide, görünümüne
Express
Microsoft Learn
geçirilen özelliğintitle
değerini olarak değiştirmek için kodu değiştirin.... res.render('index', { title: 'Microsoft Learn' }); ...
İşiniz bittiğinde dosyayı kaydettiğinizden emin olun.
Cloud Shell'de sonraki komut kümesini çalıştırarak web uygulamasının görüntüsünü yeniden derleyin ve Container Registry'ye gönderin.
<container_registry_name>
değerini kayıt defterinizin adıyla değiştirin. İkinci komutun sonundaki.
karakterini unutmayın. Derlemenin tamamlanmasını bekleyin.cd ~/mslearn-deploy-run-container-app-service/node az acr build --registry <container_registry_name> --image webimage .
Sol menü bölmesindeki Hizmetler'in altında Web kancaları'nı seçin. Kapsayıcı kayıt defterinizin Web Kancaları bölmesinde listeden tek web kancasını seçin.
Web kancasının çalıştırdığınız derlemeye ve göndermeye yanıt olarak tetiklenen bir kaydı olduğuna dikkat edin.
Web uygulamasını yeniden test etme
Tarayıcıda web uygulamanıza dönün. Sekmeyi daha önce kapattıysanız, Azure portalında web uygulamanızın Genel Bakış sayfasına gidebilir ve üst menü çubuğunda Gözat'ı seçebilirsiniz. Web uygulaması Container Registry'den yeni görüntüyü yüklerken bir hazırlıksız başlatma gecikmesi olacaktır.
Sayfa içeriğinin, kapsayıcı görüntüsünde yapılan güncelleştirmeleri yansıtacak biçimde değiştirildiğini unutmayın.
Web uygulaması yeni görüntü temelinde otomatik olarak güncelleştirilmiş ve yeniden dağıtılmıştır. Kayıt defterinizdeki web kancası hizmeti web uygulamanıza kapsayıcı görüntüsünün değiştirildiğini bildirerek bir güncelleştirmeyi tetikler.