Öğretici: Visual Studio kullanarak Azure Container Apps'e dağıtma

Azure Container Apps sunucusuz bir platformda mikro hizmetler ve kapsayıcılı uygulamalar çalıştırmanıza olanak tanır. Container Apps ile kapsayıcı çalıştırmanın avantajlarından yararlanırken, bulut altyapısını ve karmaşık kapsayıcı düzenleyicilerini el ile yapılandırma endişelerini geride bırakırsınız.

Bu öğreticide Visual Studio kullanarak Azure Container Apps'e kapsayıcılı ASP.NET Core 6.0 uygulaması dağıtacaksınız. Aşağıdaki adımlar ASP.NET Core önceki sürümleri için de geçerlidir.

Önkoşullar

Proje oluşturma

Azure'a dağıtılacak kapsayıcılı ASP.NET Core uygulamasını oluşturarak başlayın.

  1. Visual Studio'da Dosya'yı ve ardından Yeni => Proje'yi seçin.

  2. İletişim kutusu penceresinde ASP.NET arayın ve web uygulaması ASP.NET Core seçin ve İleri'yi seçin.

  3. Proje Adı alanında uygulamaya MyContainerApp adını verin ve İleri'yi seçin.

  4. Ek Bilgi ekranında Docker'ı Etkinleştir'i seçtiğinizden ve ardından Docker işletim sistemi ayarı için Linux'un seçildiğinden emin olun. Azure Container Apps şu anda Windows kapsayıcılarını desteklememektedir. Bu seçim, proje şablonunun varsayılan olarak kapsayıcılı hale getirmeyi desteklemesini sağlar. Etkinleştirildiğinde, proje çalışırken veya oluştururken bir kapsayıcı kullanır.

  5. Oluştur'a tıklatır ve Visual Studio projeyi oluşturur ve yükler.

Docker'ı etkinleştirmeyi gösteren ekran görüntüsü.

Azure Container Apps'e dağıtma

Proje şablonunda Docker'i Etkinleştir ayarı seçildiği için uygulama bir Dockerfile içerir. Visual Studio, Azure Container Apps tarafından çalıştırılan kapsayıcı görüntüsünü oluşturmak için Dockerfile'ı kullanır.

Bu işlemin ayrıntıları hakkında daha fazla bilgi edinmek isterseniz Visual Studio'nun kapsayıcılı uygulamaları nasıl derlediğini öğrenin.

Artık uygulamaya Azure Container Apps'e dağıtmaya hazırsınız.

Kaynakları oluşturma

Visual Studio yayımlama iletişim kutuları mevcut Azure kaynaklarını seçmenize veya uygulamalarınızı dağıtmak için kullanılacak yenilerini oluşturmanıza yardımcı olur. Ayrıca projedeki Dockerfile dosyasını kullanarak kapsayıcı görüntüsünü oluşturur, bu görüntüyü ACR'ye gönderir ve son olarak yeni görüntüyü seçilen kapsayıcı uygulamasına dağıtır.

  1. MyContainerApp proje düğümüne sağ tıklayın ve Yayımla'yı seçin.

  2. İletişim kutusunda yayımlama seçenekleri listesinden Azure'ı ve ardından İleri'yi seçin.

    Azure'da yayımlamayı gösteren ekran görüntüsü.

  3. Belirli hedef ekranında Azure Container Apps (Linux) öğesini ve ardından yeniden İleri'yi seçin.

    Container Apps'in seçili olduğunu gösteren ekran görüntüsü.

  4. Ardından projeyi barındırmak için bir Azure Container App oluşturun. Sağ taraftaki yeşil artı simgesini seçerek oluştur iletişim kutusunu açın. Yeni oluştur iletişim kutusunda aşağıdaki değerleri girin:

    • Kapsayıcı Uygulaması adı: adını msdocscontainerappgirin.
    • Abonelik adı: Uygulamanızı barındırmak istediğiniz aboneliği seçin.
    • Kaynak grubu: Kaynak grubu, Azure'daki ilgili kaynakları düzenlemek için mantıksal bir kapsayıcı görevi görür. Mevcut bir kaynak grubunu seçebilir veya Yeni'yi seçerek seçtiğiniz bir adla (örneğin msdocscontainerapps) bir kaynak grubu oluşturabilirsiniz.
    • Container Apps Ortamı: Container Apps Ortamı: Her kapsayıcı uygulaması bir kapsayıcı uygulaması ortamının parçası olmalıdır. Ortam, bir veya daha fazla kapsayıcı uygulaması için yalıtılmış bir ağ sağlayarak birbirlerini kolayca çağırmalarını sağlar. Kapsayıcı uygulaması ortamınız için yeni oluştur iletişim kutusunu açmak için Yeni'ye tıklayın. Varsayılan değerleri bırakın ve Tamam'ı seçerek ortam iletişim kutusunu kapatın.
    • Kapsayıcı Adı: Bu, bu kapsayıcı uygulaması için çalıştırılacak kapsayıcının kolay adıdır. Bu hızlı başlangıcın adını msdocscontainer1 kullanın. Kapsayıcı uygulaması genellikle tek bir kapsayıcı çalıştırır, ancak birden fazla kapsayıcıya ihtiyaç duyulduğu zamanlar vardır. Bu tür örneklerden biri, özel günlüğe kaydetme veya iletişim gibi bir etkinliği gerçekleştirmek için sepet kapsayıcısına ihtiyaç duyulmasıdır.

    Yeni Container Apps'in nasıl oluşturulacağını gösteren ekran görüntüsü.

  5. Oluşturma işlemini veya kapsayıcı uygulamanızı sonlandırmak için Oluştur'u seçin. Visual Studio ve Azure sizin yerinize gerekli kaynakları oluşturur. Bu işlem birkaç dakika sürebilir, bu nedenle devam etmeden önce tamamlanmasına izin verin.

  6. Kaynaklar oluşturulduktan sonra İleri'yi seçin.

    Oluşturulan kaynağın nasıl seçiliyor olduğunu gösteren ekran görüntüsü.

  7. Kayıt Defteri ekranında, varsa mevcut bir Kayıt Defteri'ni seçebilir veya yeni bir kayıt defteri oluşturabilirsiniz. Yeni bir tane oluşturmak için sağ taraftaki yeşil + simgeye tıklayın. Yeni kayıt defteri oluştur ekranında aşağıdaki değerleri doldurun:

    • DNS ön eki: Seçtiğiniz değeri msdocscontainerregistry veya adını girin.
    • Abonelik Adı: Kullanmak istediğiniz aboneliği seçin. Yalnızca bir tane seçebilirsiniz.
    • Kaynak Grubu: Daha önce oluşturduğunuz msdocs kaynak grubunu seçin.
    • Sku: Standart'ı seçin.
    • Kayıt Defteri Konumu: Coğrafi olarak size yakın bir bölge seçin.

    Kapsayıcı kayıt defterinin nasıl oluşturulacağını gösteren ekran görüntüsü.

  8. Bu değerleri doldurduktan sonra Oluştur'u seçin. Visual Studio ve Azure'ın kayıt defterini oluşturması biraz zaman alır.

  9. Kapsayıcı kayıt defteri oluşturulduktan sonra, bunun seçildiğinden emin olun ve ardından Son'u seçin. Visual Studio'da yayımlama profilinin oluşturulması biraz zaman alacaktır. Bu yayımlama profili, VS'nin seçtiğiniz yayımlama seçeneklerini ve kaynaklarını depoladığı yerdir; böylece istediğiniz zaman hızla yeniden yayımlayabilirsiniz. İletişim kutusu tamamlandıktan sonra kapatabilirsiniz.

    Oluşturulan kayıt defterini seçme işlemini gösteren ekran görüntüsü.

Visual Studio kullanarak uygulamayı yayımlama

Kaynaklar ve yayımlama profili oluşturulurken, yine de uygulamayı Azure'da yayımlamanız ve dağıtmanız gerekir.

Azure'da oluşturduğunuz kapsayıcı uygulamasına dağıtmak için yayımlama profili ekranının sağ üst kısmındaki Yayımla'yı seçin. Bu işlem biraz zaman alabilir, bu nedenle tamamlanmasını bekleyin.

Uygulamanın nasıl yayım yapılacağını gösteren ekran görüntüsü.

Uygulamanın dağıtımı tamamlandığında Visual Studio, dağıtılan sitenizin URL'sine yönelik bir tarayıcı açar. Tüm uygun kaynaklar sağlamayı tamamlamadıysa, bu sayfa başlangıçta bir hata görüntüleyebilir. Dağıtımın tam olarak tamamlandığını denetlemek için tarayıcıyı düzenli aralıklarla yenilemeye devam edebilirsiniz.

Yayımlanan siteyi gösteren ekran görüntüsü.

GitHub Actions kullanarak uygulamayı yayımlama

Container Apps, geliştirme iş akışlarını doğrudan projenizin GitHub deposu aracılığıyla otomatikleştirmek, özelleştirmek ve yürütmek için güçlü bir araç olan GitHub eylemleri aracılığıyla CI/CD kullanılarak da dağıtılabilir.

Visual Studio yayımladığınız projenin GitHub'da barındırılıyor olduğunu algılarsa yayımlama akışı ek bir Dağıtım türü adımı sunar. Bu aşama, geliştiricilerin hızlı başlangıçta daha önce gösterilen adımları kullanarak veya GitHub Actions bir iş akışı aracılığıyla doğrudan Visual Studio aracılığıyla yayımlamayı seçmesine olanak tanır.

Dağıtım türünü gösteren ekran görüntüsü.

GitHub Actions iş akışını seçerseniz, Visual Studio projenin kök dizinine içinde oluşturulan bir YAML dosyasıyla birlikte bir .github klasörü ekler. YAML dosyası, kodunuzu her gönderişinizde uygulamanızı derlemek ve Azure'a dağıtmak için GitHub Actions yapılandırmalar içerir.

Bir değişiklik yaptıktan ve kodunuzu gönderdikten sonra, GitHub'da Eylemler sekmesinin altında derleme ve dağıtma işleminin ilerleme durumunu görebilirsiniz. Bu sayfada iş akışının ilerleme durumu ve durumuyla ilgili ayrıntılı günlükler ve göstergeler sağlanır.

GitHub eylemlerini gösteren ekran görüntüsü.

derleme ve dağıtma işlerinin yanında yeşil bir onay işareti gördüğünüzde iş akışı tamamlanır. Container Apps sitenize göz atarken en son değişikliklerin uygulandığını görmeniz gerekir. Azure portal sayfasını kullanarak kapsayıcı uygulamanızın URL'sini her zaman bulabilirsiniz.

Kaynakları temizleme

Bu uygulamayı kullanmaya devam etmeyecekseniz kaynak grubunu kaldırarak Azure Container Apps örneğini ve ilişkili tüm hizmetleri silebilirsiniz.

Oluşturduğunuz kaynakları kaldırmak için Azure portal şu adımları izleyin:

  1. Genel Bakışbölümünden msdocscontainerapps kaynak grubunu seçin.
  2. Kaynak grubununGenel Bakış'ın üst kısmındaki Kaynak grubunu sil düğmesini seçin.
  3. "my-container-apps" onay kutusunu silmek istediğinizden emin misiniz? iletişim kutusunamsdocscontainerapps kaynak grubu adını girin.
  4. Sil’i seçin.
    Kaynak grubunu silme işleminin tamamlanması birkaç dakika sürebilir.

İpucu

Sorun mu yaşıyorsunuz? Azure Container Apps deposunda bir sorun açarak GitHub'da bize bildirin.

Sonraki adımlar