1. Ana Sayfa
  2. Microsoft Azure
  3. Azure DevOps Üzerinden On-Premises IIS Server Üzerine Web Sitesi Yayınlama

Azure DevOps Üzerinden On-Premises IIS Server Üzerine Web Sitesi Yayınlama

azure-devops-solutions-thumbnail

Bu yazımda üzerinden yapmış olduğumuz Web Site’lerimizi On-Premises üzerinde bulunan sunucumuzda yayınlamayı anlatacağım.Yayınlayacağınız Web Site’sinin gerekli olan eklenti paketlerinin ve IIS Server‘ın çalışması için gerekli olan tüm özelliklerin Server Manager üzerinden yüklendiğini kontrol etmelisiniz. Aksi takdir de yayınlamış olduğunuz Web sitesi çalışmayacaktır. IIS Server’ın hazırlanması konusunda geliştirici takım arkadaşlarınızdan veya şirketinizde bulunan orta katman sistem yöneticilerinden destek alabilirsiniz.

Burada yapmak istediğimiz kısım Web Sitemizi üzerinde App Service Plan oluşturmadan ve ücret ödemeden On-Prem yapımızdaki IIS Sunucu’yu kullanarak maliyetleri azaltmaktır veya direk On-Prem yapımızda Web sitemizi yayınlamaktır.

Adımlara başlayabiliriz,

1.Azure üzerine giriş yapıyoruz ve yeni bir proje oluşturuyoruz. Proje’nin erişilebilirlik durumunu ve versiyonlama türünü seçerek projemizi oluşturuyoruz.

Resim-1

Resim-2

2.Projemiz başarı ile oluştu. Şimdi bilgisayarımızda üzerinde yeni bir Web Projesi oluşturma ile devam edeceğiz.

Resim-3

3.Web projesi oluşturarak devam ediyoruz.

Resim-4

Resim-5

Resim-6

4.Oluşturduğumuz uygulamamıza bir adet kaynak kontrolü ekliyoruz.

Resim-7

5.Azure DevOps üzerinde projemizi seçiyor ve bir klasör oluşturuyoruz.Uygulamamız seçtiğimiz projenin içindeki, oluşturduğumuz klasörün içinde tutulacaktır.

Resim-8

6.Bu işlemlerden sonra Team Explorer’a gelerek uygulama dosyalarının Azure DevOps üzerine gönderilmesini sağlayacağız.Team Explorer içinde bulunan Pending Changes kısmına geliyoruz.

Resim-9

7.Dosyaların Azure DevOps üzerine eklenmesi için check In atıyoruz.

Resim-10

8.Uygulamamız Azure DevOps içinde bulunan Repos kısmına gelmiş.Şimdi On-Prem IIS sunucumuzu eklemek için Azure DevOps ana ekranına döneceğiz.

Resim-11

9.Organization settings kısmına geliyoruz.

Resim-12

10.Açılan menü de Deployment pools kısmına gelerek sunucumuzu eklemeye başlıyoruz.

Resim-13

11.Yeni bir deployment pool oluşturuyoruz.

Resim-14

12.Oluşturacağımız Deployment Pool’a bir isim veriyoruz ve hangi proje için kullanacaksak o projeyi seçiyoruz.

Resim-15

13.Ekranda bulunan PowerShell Script’ini On-Prem yapımızda kullanacağımız IIS Sunucu’da PowerShell üzerinde çalıştırıyoruz.PowerShell’i admin modun da çalıştırmayı unutmayınız.

Resim-16

14.Script’i çalıştırdıktan sonra bizden bir doğrulama istediğini görüyoruz.Bu doğrulama işlemini Token ile yapacağız.Bu token script ile yüklenmiş agent’ın Azure DevOps üzerinde oluşturduğumuz Deployment Pool’una bağlanmasını sağlayacaktır.

Resim-17

15.Bu ekran da bizden bir token id istiyor.Bu token ID’yi alabilmek için aşağıdaki adımları uygulayacağız.

Resim-18

16.Giriş menüsü içinden Security kısmına geliyoruz

Resim-19

17.New Token diyerek oluşturma işlemine başlıyoruz.

Resim-20

18.Oluşturduğumuz Token ID’yi bir isim veriyoruz.Expiration kısmı ise oluşturduğumuz Token’nın geçerlilik süresini seçiyoruz.Maksimum kullanım zaman 1 yıl olarak seçebiliyoruz.Yetkilendirme olarak gereken yetkileri aşağıdaki gibi verebiliriz.

Resim-21

Test ortamı olduğu için ben Full Access izin vererek oluşturuyorum.

Resim-22

19.Token oluştu.Oluşan Token’ı kopyalayıp PowerShell’e yapıştırıyoruz.

Resim-23

20.Token ID’yi girdikten sonra otomatik olarak agent servis ayarlarını yapıyor.

Resim-24

21.Son olarak agent’ın yükleme yerini kontrol ediyoruz.Eğer bu klasör oluşmuş ise yükleme işlemi ve Token işlemleri başarı ile yapılmıştır.

Resim-25

22.Token durumu aktif olarak görüyoruz.

Resim-26

23.Şimdi On-Prem yapımızdaki bir IIS Sunucu’ya deployment yapacağımız için Azure DevOps üzerinde bir adet build Pipeline oluşturuyoruz.

Resim-27

24.Kod’un bulunduğu kısmı seçiyoruz.Bu ekrana yeni olarak eskiden olmayan Team Foundation Version Control kısmı eklendi.Projeyi oluşturduğumuz zamanda Team Foundation Version Control seçmiştik.Eğer isterseniz yine de klasik editörü de kullanabilirsiniz.

Resim-28

25.Uygulamamızın bulunduğu konumu seçerek devam ediyoruz.

Resim-29

26.Daha sonra uygulamamızın kullanacağı Template’i seçiyoruz.Bu template’I yazmış olduğumuz uygulamanın türüne göre seçmeyi unutmayınız.

Resim-30

27.Oluşan yükleme Task’larını kaydedip devam ediyoruz.

Resim-31

Resim-32

28.Şimdi otomatize olacak bir adet Release pipeline oluşturuyoruz.

Resim-33

29.Stage (aşama) kısımlarında kullanılacak olan template seçiyoruz. Burada On-Prem yapımızdaki IIS Sunucu’ya kuracağımız için IIS website deployment’I seçiyoruz.

Resim-34

30.Oluşturduğumuz Stage’e (Aşama)’ya bir isim veriyoruz.Ben test ortamı olduğu için direk test diyerek isimlendirdim.

Resim-35

31.Oluşan Stage’in içerisindeki Task kısmına girerek devam ediyoruz.Bu ekranda yayınlanacak web sayfası için gerekli olan ayarları yapılandırabilirsiniz.

Resim-36

32. Bu ekran da deployment için kullanacağımız IIS Pool’u seçiyoruz.Bu Pool On-Prem yapımızdaki IIS Sunucusu olarak düşünebiliriz.

Resim-37

33.Bu ekranda da On-Prem IIS Sunucu içerisinde deploy edilecek dosya yolunu seçerek devam ediyoruz.

Resim-38

34.Yaptığımız tüm işlemleri kaydederek devam ediyoruz.

Resim-39

35.Sonra artifact ekliyoruz.Artifact uygulamanın Derlenmiş/Build edilmiş hali diyebiliriz.Bu ekranda artifact paketimizi ve kullanılacak olan versiyonlama bilgilerini girdikten sonra kaydedip devam ediyoruz.

Resim-40

36.Daha sonrasında işaretli alanı tıklayarak trigger (Tetikleme) ‘yi aktif ediyoruz.Otomatik olarak deployment işlemini yapabilmek için bu gereklidir.Bunun faydası olarak kodu geliştirirken attığımız her check in’de otomatik olarak kodu’umuz Azure DevOps üzerinden deploy ediliyor.

Tüm bu işlemlerin hepsini kaydederek devam ediyoruz.

Resim-41

37.Daha sonrasında Build paneli içerisinde Trigger (Tetikleyiciler) altından da Continuous Integration’I aktif ediyoruz.Daha sonra bu işlemi kaydedip devam ediyoruz.

Resim-42

38.Şimdi yaptığımız tüm ayarları test etmek için bir adet check’in atıyoruz.

Resim-43

39.Build aşamamız başladı.

Resim-44

40.Build sürecini bu ekranlardan kontrol edebilirsiniz.

Resim-45

41.Release sürecimi başlamıştır.

Resim-46

Resim-47

42.Release sürecimiz bitmiştir.

Resim-48

Resim-49

43.Yapmış olduğumuz deployment On-Prem yapımızdaki IIS Sunucumuz üzerine gelmiştir.

Resim-50

Bir sonraki yazımda görüşmek üzere.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

TAGs: Azure, Azure DevOps, DevOps, , , IIS,

Yorum Yap

Yazar Hakkında

BT Sistemlerinde Altyapı, Depolama, Bulut Bilişim, Sanallaştırma, ve Sistem Mimari tarafında deneyimim bulunmaktadır. Edinmiş olduğum deneyim ve becerileri profesyonel iş hayatımda aktif olarak kullanıp geliştiriyorum. Gelişim sürecimi mesleki eğitimler ve sertifikasyon programları ile destekliyorum.

Yorum Yap