Azure Cloud Services üzerinde Express kullanarak Node.js web uygulaması derleme ve dağıtma (klasik)
Önemli
Cloud Services (klasik) artık yeni müşteriler için kullanımdan kaldırılmıştır ve tüm müşteriler için 31 Ağustos 2024'te kullanımdan kaldırılacaktır. Yeni dağıtımlarda yeni Azure Resource Manager tabanlı dağıtım modeli Azure Cloud Services (genişletilmiş destek) kullanılmalıdır.
Node.js, çekirdek çalışma zamanında çok az işlev kümesi içerir. Geliştiriciler genellikle Node.js uygulaması geliştirirken ek işlevsellik sağlamak için üçüncü taraf modülleri kullanır. Bu öğreticide, Node.js web uygulamaları oluşturmaya yönelik bir MVC çerçevesi sağlayan Express modülünü kullanarak yeni bir uygulama oluşturacaksınız.
Tamamlanan uygulamanın ekran görüntüsü aşağıdadır:
Bulut Hizmeti Projesi Oluşturma
Dekont
Bu bölümü başarıyla tamamlamak için node.js dosyasının ve platformunuzun Node.js için Azure SDK'sının çalışan bir yüklemesine sahip olmanız gerekir.
- Node.js için Azure SDK'sını yükleme: Windows installer
adlı expressapp
yeni bir bulut hizmeti projesi oluşturmak için aşağıdaki adımları gerçekleştirin:
Başlat Menüsü veya Başlangıç Ekranı'ndan Windows PowerShell'i arayın. Son olarak, Windows PowerShell'e sağ tıklayın ve Farklı Çalıştır Yönetici istrator'ı seçin.
Dizinleri c:\node dizinine değiştirin ve webRole1 adlı
expressapp
yeni bir çözüm ve web rolü oluşturmak için aşağıdaki komutları girin:PS C:\node> New-AzureServiceProject expressapp PS C:\Node\expressapp> Add-AzureNodeWebRole PS C:\Node\expressapp> Set-AzureServiceProjectRole WebRole1 Node 0.10.21
Dekont
Add-AzureNodeWebRole varsayılan olarak Node.js'nin eski bir sürümünü kullanır. Yukarıdaki Set-AzureServiceProjectRole deyimi, Azure'a Node'un v0.10.21 sürümünü kullanmasını emredmektedir. Parametrelerin büyük/küçük harfe duyarlı olduğunu unutmayın. WebRole1\package.json içindeki engines özelliğini denetleyerek Node.js dosyasının doğru sürümünün seçildiğini doğrulayabilirsiniz.
Express yükleme
Aşağıdaki komutu vererek Express oluşturucusunu yükleyin:
PS C:\node\expressapp> npm install express-generator -g
npm komutunun çıkışı aşağıdaki sonuçla benzer görünmelidir.
Dizinleri WebRole1 dizinine değiştirin ve express komutunu kullanarak yeni bir uygulama oluşturun:
PS C:\node\expressapp\WebRole1> express
Önceki uygulamanızın üzerine yazmanız istenir. Devam etmek için y veya evet girin. Express, uygulamanızı oluşturmak için app.js dosyasını ve klasör yapısını oluşturur.
package.json dosyasında tanımlanan ek bağımlılıkları yüklemek için aşağıdaki komutu girin:
PS C:\node\expressapp\WebRole1> npm install
Bin/www dosyasını server.js dosyasına kopyalamak için aşağıdaki komutu kullanın. Böylece bulut hizmeti bu uygulamanın giriş noktasını bulabilir.
PS C:\node\expressapp\WebRole1> copy bin/www server.js
Bu komut tamamlandıktan sonra WebRole1 dizininde bir server.js dosyanız olmalıdır.
Aşağıdaki satırdan '.' karakterlerinden birini kaldırmak için server.js dosyasını değiştirin.
var app = require('../app');
Bu değişikliği yaptıktan sonra satır aşağıdaki gibi görünmelidir.
var app = require('./app');
Dosyayı (eski adıyla
bin/www
) gerekli olan uygulama dosyasıyla aynı dizine taşıdığımız için bu değişiklik gereklidir. Bu değişikliği yaptıktan sonra server.js dosyasını kaydedin.Uygulamayı Azure öykünücüsunda çalıştırmak için aşağıdaki komutu kullanın:
PS C:\node\expressapp\WebRole1> Start-AzureEmulator -launch
Görünümü Değiştirme
Şimdi görünümü değiştirerek "Azure'da Express'e Hoş Geldiniz" iletisini görüntüleyin.
index.jade dosyasını açmak için aşağıdaki komutu girin:
PS C:\node\expressapp\WebRole1> notepad views/index.jade
Jade, Express uygulamaları tarafından kullanılan varsayılan görünüm altyapısıdır.
Azure'a ekleyerek metnin son satırını değiştirin.
Dosyayı kaydedin ve Not Defteri çıkın.
Tarayıcınızı yenilediğinizde değişikliklerinizi görürsünüz.
Uygulamayı test ettikten sonra, öykünücüyü durdurmak için Stop-AzureEmulator cmdlet'ini kullanın.
Uygulamayı Azure'da Yayımlama
Azure PowerShell penceresinde Publish-AzureServiceProject cmdlet'ini kullanarak uygulamayı bir bulut hizmetine dağıtın
PS C:\node\expressapp\WebRole1> Publish-AzureServiceProject -ServiceName myexpressapp -Location "East US" -Launch
Dağıtım işlemi tamamlandıktan sonra tarayıcınız açılır ve web sayfası görüntülenir.
Sonraki adımlar
Daha fazla bilgi için bkz. Node.js Geliştirici Merkezi.