Bir Web Uygulamasını Database ile Birlikte Azure’a Publish Etme
Selamlar;
Bugün yazmış olduğumuz bir web application’ı database ile birlikte azure’a nasıl publish edeceğimizi ve daha sonrasında virtual machine olmadan azure üzerinde oluşturduğumuz bu web application’a ftp ile nasıl erişebileceğimizi inceleyeceğiz.
Öncelikle WebSite sağ click publish seçeneği aşağıdaki gibi seçilir.
Web Publish Microsoft Azure Websites:
Gelen ekran görüntüsü aşağıdaki gibidir. Görüldüğü gibi 3 farklı publish yöntemi bulunmaktadır. Bunlardan ilki ki benim ençok tercih ettiğim yöntem Microsoft Azure Websites seçeneği ile azure hesabına bağlanıp yani hiç azure’a gitmeden yeni bir web site oluşturmak yada azure üzerinde var olan bir website üzerine publish etmektir.
Microsoft Azure Website tıklanınca aşağıdaki login ekranı karşımıza çıkar.
Login işleminden sonra azure üzerinde önceden oluşturulmuş olan website’lar aşağıdaki gibi gözükür. Ve istendiğinde var olan bir website ezilerek üstüne publish yapılabilir.
New button’una basılarak yeni bir website aşağıdaki gibi oluşturulabilir. Tekil bir site name seçilmesinden sonra dikkat edilmesi gereken konu Region’ın bize en yakın olan North Europe’un seçilmesidir.
Publish işleminden sonra oluşturulan website’a browser üzerinden aşağıdaki gibi erişilebilir.
Azure Website Publish Import:
2. Yol Import yöntemi için yeni bir website önce azure üzerinde aşağıdaki gibi NEW buttonuna basılarak oluşturulur.
Karşımız aşağıdaki gibi bir ekran gelir. Yaratılcak web sayfasının url’i ve bize en yakın North Europe bölgesi seçilir.
Ilgili web sayfası seçilip DASHBOARD’a tıklanması durumunda aşağıdaki ekran karşımıza çıkar. Download the publish profile tıklanarak bu web sayfasına ait publish bilgileri download edilir. Örnek amaçlı inen dosyanın adı WebinarAspNet5.azurewebsites.net.PublishSettings dir.
Daha sonra Visual Studio ortamında publish edilmek istenen web sayfası import seçeneği seçilmesinin ardından, yukarıda download edilmiş olan profil dosyası seçilir.
Karşımıza aşağıda görüldüğü gibi publish bilgileri çıkar. Publish buttonuna basıldığı zaman web sayfası azure’a publish edilmiş olunur.
Publish edilen web sayfası azure’da aşağıdaki gibi gözükmektedir.
SQL Database’i Azure Publish Etme:
Var olan bir sql database azure aşağıda görüldüğü gibi publish edilir.
Sql tarafında ilk olarak aşağıdaki gibi bir karşılama ekran karşımıza gelir.
Deployment Settings kısmında bağlanılacak azure üzerindeki serverın connection string’i istenmektedir.
Eğer daha önce azure’da hic server yaratılmamış ise aşağıdaki gibi SQLDATABASE kısmında Server sekmesinde yeni bir server yaratılır.
Sql’den azure tarafına connection sağlanılabilmesi için öncelikle aşağıda görüldüğü gibi bağlantı yapılacak makinanın Ip’sine azure tarafındaki ilgili server’da izin verilmesi gerekmektedir. Ayrıca aynı database’e azure tarafında yayınlanmış uygulamalarında erişebilmesi için Windows Azure Services için YES seçeneği seçilmelidir.
Gelelim Connection String’in belirlenmesine. Yanda görüldüğü gibi server adından sonraki kısım defaultdır yani sabittir. [Server Adı].database.windows.net,1433. Yani burdaki connection string server ismimiz s68tgsenkz olduğuna göre : s68tgsenkz.database.windows.net,1433 şeklindedir. Aşağıda görüldüğü gibi Login ve Password bilgileri girildikten sonra azure üzerindeki sql server’a bağlanılmış olunur.
İlgili server’a bağalanıldıktan sonra atılacak database özelliğini belirleyen Web veya Bussines paketlerinden biri aşağıdaki gibi seçilir. Database Server V12 ile bu paketler kaldırılmış yerine, Basic, Standart ve Premium paketleri gelmiştir. Eylül ayından sonra Bussines ve Web paketleri tamamen kaldırılacaktır. Bu paketlere göre DB’nin kapasitesi, disk performansı gibi özellikleri ihtiyaca göre değiştirilebilmektedir.
Publish işleminden sonra aşağıdaki ekran çıktısı alınır.
Azure üzerinde çalışan ilgili database aşağıdaki gibi gözükür.
Azure Üzerinde Yayınlanan Bir Web Application’a Ftp ile Bağlanma:
Öncelikle azure üzerinde bir web site’a ftp ile bağlantı neden lazım olur sorusuna cevap arıyalım. Diyelim ki Azure’da yayınlanan bir web uygulamasında image’ların konulduğu bir upload klasörü olsun. Buraya atılan imagelar incelenmek istendiğinde ilgili web application’a ftp ile azure üzerinden erişilmesi gerekir. Bunun için aşağıda görülen ekrandan ftp güvenlik bilgileri girilir.
Yukarıdaki credential bilgileri girildikten sonra ilgili ftp bilgileri aşağıda görüldüğü gibi oluşur.
Belirtilen Ftp bilgileri ile azure üzerindeki ilgili Web Application’a aşağıdaki gibi bağlanılır.
Böylece bir Web Application’ı ve var olan bir Sql Database’i Azure tarafına nasil publish edebileceğimizi gördük. Ayrıca Azur’da yayınlanan bir web uygulamasına Ftp ile nasıl bağlanabileceğimizi inceledik. Geldik bir makalenin daha sonuna.
Yeni bir makalede görüşmek üzere hepinize hoşçakalın.
Merhabalar database first ile oluşturulmuş mvc projesini nasıl yayımlayabiliriz acaba.
Selamlar Barış;
Yayımladığın yerde de ilgili DB’ye erişiminiz olduktan sonra ilgili projeyi, sunucuya publish edebilirsiniz. Bu durumunda bir sorun yaşamazsınız.
Kısaca publish edilecek yere de, localde çalıştığınız DB’yi atmanız gerekmektedir.
İyi çalışmalar.
merhabalar
ben php ile bir proje tamamladım bunu azure üzerinden yayınlayıp database ile çalıştırabilirmiyim acaba bu adımları kullanarak. Veri tabanım mysql de bu sebepten sorma ihtiyacı duydum .
Selamlar Anıl,
Evet yapabilirsin. MySql ve Php desteği Azure’da tabi ki var :)
İyi çalışmalar.
Hocam merhaba, peki azure dışı siteler için nasıl sorunsuz bir şekilde yayınlarız? Veritabanını ve siteyi
Selamlar,
Normal bir sunucuya göre çok daha kolay bir şekilde. Olmadı bunun için bir etkinlik yapmayı planlıyorum.
Çok güzel olur hocam :) makale olarakta paylaşırsanız çok memnum olurum.
Hocam kolay gelsin güzel bir çalışma elinize sağlık. Benim şöyle bir sorum olacaktı azure dışında bir sağlayıcıdan aldığımız hostta attığımızda ilk sayfa açılırken en basit ve boş uygulamada bile yavaşlık söz konusu. çalıştıktan sonra bunu görmüyorsunuz ama ilk başlangıç yavaş. sanırsınız pc de derleme yapıyor :). bunun bir çözümü veya bir açıklaması var mı? veya önere bileceğiniz bir kaynak?