Azure App Service'te Node.js web uygulaması oluşturmaCreate a Node.js web app in Azure

Not

Bu makalede bir uygulamanın Windows üzerinde App Service'e dağıtımı yapılır.This article deploys an app to App Service on Windows. Linux üzerinde App Service'e dağıtım yapmak için bkz. Linux üzerinde Azure App Service'te Node.js web uygulaması oluşturma.To deploy to App Service on Linux, see Create a Node.js web app in Azure App Service on Linux.

Azure App Service, yüksek oranda ölçeklenebilen, kendi kendine düzeltme eki uygulayan bir web barındırma hizmeti sunar.Azure App Service provides a highly scalable, self-patching web hosting service. Bu hızlı başlangıçta, Azure App Service'te bir Node.js uygulaması dağıtma işlemi gösterilmektedir.This quickstart shows how to deploy a Node.js app to Azure App Service. Azure CLI'yi kullanarak Web uygulamasını oluşturun ve örnek Node.js kodunu Web uygulamasına dağıtmak için Git'i kullanın.You create the web app using the Azure CLI, and you use ZipDeploy to deploy the sample Node.js code to the web app.

Azure'da çalışan örnek uygulama

Mac, Windows veya Linux makinesi kullanarak buradaki adımları izleyebilirsiniz.You can follow the steps here using a Mac, Windows, or Linux machine. Önkoşullar yüklendikten sonra adımların tamamlanması yaklaşık olarak beş dakika sürer.Once the prerequisites are installed, it takes about five minutes to complete the steps.

Yoksa bir Azure aboneliği, oluşturun bir ücretsiz bir hesap başlamadan önce.If you don't have an Azure subscription, create a free account before you begin.

ÖnkoşullarPrerequisites

Bu hızlı başlangıcı tamamlamak için:To complete this quickstart:

Örneği indirmeDownload the sample

https://github.com/Azure-Samples/nodejs-docs-hello-world/archive/master.zip adresinden örnek Node.js projesini indirin ve ZIP arşivini ayıklayın.Download the sample Node.js project from https://github.com/Azure-Samples/nodejs-docs-hello-world/archive/master.zip and extract the ZIP archive.

index.js dosyasını açın ve aşağıdaki satırı bulun:Open index.js and find the following line:

const port = process.env.PORT || 1337;

App Service, process.env.PORT dosyasını uygulamanıza ekleyerek kodun bu değişkenle dinlemesi gereken bağlantı noktasını öğrenmesini sağlar.App Service injects process.env.PORT into your application, so the code uses the variable to know which port to listen.

Bir terminal penceresinde gidin kök dizini örnek Node.js projesinin (içeren dizine index.js).In a terminal window, navigate to the root directory of the sample Node.js project (the directory that contains index.js).

Uygulamayı yerel olarak çalıştırmaRun the app locally

Azure'a dağıttığınızda nasıl görüneceğini görmek için uygulamayı yerel olarak çalıştırın.Run the application locally so that you see how it should look when you deploy it to Azure. Yerleşik Node.js HTTP sunucusunu başlatmak için bir terminal penceresi açın ve npm start betiğini kullanın.Open a terminal window and use the npm start script to launch the built in Node.js HTTP server.

npm start

Bir web tarayıcısı açın ve http://localhost:1337 konumundaki örnek uygulamaya gidin.Open a web browser, and navigate to the sample app at http://localhost:1337.

Sayfada gösterilen örnek uygulamada Hello World iletisini görebilirsiniz.You see the Hello World message from the sample app displayed in the page.

Yerel olarak çalışan örnek uygulama

Terminal pencerenizde Ctrl+C tuşlarına basarak web sunucusundan çıkın.In your terminal window, press Ctrl+C to exit the web server.

Not

Azure App Service'te uygulama iisnode kullanılarak IIS'de çalıştırılır.In Azure App Service, the app is run in IIS using iisnode. Uygulamanın iisnode ile çalıştırılmasını sağlamak için kök uygulama dizininde bir web.config dosyası bulunur.To enable the app to run with iisnode, the root app directory contains a web.config file. Bu dosya IIS tarafından okunabilir ve iisnode ile ilgili ayarlar iisnode GitHub deposunda belgelenmiştir.The file is readable by IIS, and the iisnode-related settings are documented in the iisnode GitHub repository.

Proje ZIP dosyası oluşturmaCreate a project ZIP file

Hala olduğunuzdan emin olun kök dizini örnek projesinin (içeren dizine index.js).Make sure you're still in the root directory of the sample project (the directory that contains index.js). Projenizdeki tüm öğeleri içeren bir ZIP arşivi oluşturun.Create a ZIP archive of everything in your project. Aşağıdaki komut terminalinizdeki varsayılan aracı kullanmaktadır:The following command uses the default tool in your terminal:

# Bash
zip -r myAppFiles.zip .

# PowerShell
Compress-Archive -Path * -DestinationPath myAppFiles.zip

Daha sonra bu ZIP dosyasını Azure'a yükleyip App Service'te dağıtabilirsiniz.Later, you upload this ZIP file to Azure and deploy it to App Service.

Azure Cloud Shell kullanmaUse Azure Cloud Shell

Azure, Azure Cloud Shell, tarayıcınız üzerinden kullanabileceğiniz bir etkileşimli Kabuk ortamını barındırır.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Cloud Shell'i ya da kullanmanıza imkan tanır bash veya PowerShell Azure hizmetleriyle çalışmak için.Cloud Shell lets you use either bash or PowerShell to work with Azure services. Cloud Shell önceden yüklenmiş komutları, yerel ortamınızda herhangi bir yükleme gerekmeden bu makaledeki kodu çalıştırmak için kullanabilirsiniz.You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Azure Cloud Shell'i başlatmak için:To launch Azure Cloud Shell:

SeçenekOption Örnek/bağlantıExample/Link
Kod bloğunun sağ üst köşesindeki Deneyin’i seçin.Select Try It in the upper-right corner of a code block. Seçme deneyin kod Cloud Shell için otomatik olarak kopyalamaz.Selecting Try It doesn't automatically copy the code to Cloud Shell. Örneği Azure Cloud Shell için deneyin
Git https://shell.azure.com veya Cloud Shell'i Başlat Cloud Shell, tarayıcınızda açmak için düğmeyi.Go to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. <a href="https://shell.azure.com" title="Azure Cloud Shell'i Başlat
Seçin Cloud Shell düğmesine sağ üst menü çubuğundaki Azure portalında.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Azure portaldaki Cloud Shell düğmesi

Bu makalede Azure Cloud shell'de kod çalıştırmak için:To run the code in this article in Azure Cloud Shell:

  1. Cloud Shell'i başlatın.Launch Cloud Shell.
  2. Seçin kopyalama kodu kopyalamak için bir kod bloğu üzerinde düğmesi.Select the Copy button on a code block to copy the code.
  3. Cloud Shell oturumla kodu yapıştırın Ctrl+Shift+V Windows ve Linux'ta veya Cmd + Shift+V macOS üzerinde.Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.
  4. Tuşuna Enter kodu çalıştırmak için.Press Enter to run the code.

Kaynak grubu oluşturmaCreate a resource group

Kaynak grubu web uygulamaları, veritabanları ve depolama hesapları gibi Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır.A resource group is a logical container into which Azure resources like web apps, databases, and storage accounts are deployed and managed. Örneğin, daha sonra tek bir basit adımda kaynak grubun tamamını silmeyi seçebilirsiniz.For example, you can choose to delete the entire resource group in one simple step later.

Cloud Shell içinde az group create komutuyla bir kaynak grubu oluşturun.In the Cloud Shell, create a resource group with the az group create command. Aşağıdaki örnek Orta Güney ABD konumunda myResourceGroup adlı bir kaynak grubu oluşturur.The following example creates a resource group named myResourceGroup in the South Central US location. Ücretsiz katmanda App Service için desteklenen tüm konumları görüntülemek için az appservice list-locations --sku FREE komutunu çalıştırın.To see all supported locations for App Service in Free tier, run the az appservice list-locations --sku FREE command.

az group create --name myResourceGroup --location "South Central US"

Genellikle kaynak grubunuzu ve kaynakları kendinize yakın bir bölgede oluşturursunuz.You generally create your resource group and the resources in a region near you.

Komut tamamlandığında, bir JSON çıkışı size kaynak grubu özelliklerini gösterir.When the command finishes, a JSON output shows you the resource group properties.

Azure App Service planı oluşturmaCreate an Azure App Service plan

Cloud Shell’de, az appservice plan create komutuyla bir App Service planı oluşturun.In the Cloud Shell, create an App Service plan with the az appservice plan create command.

Aşağıdaki örnekte, Ücretsiz fiyatlandırma katmanı kullanılarak myAppServicePlan adlı bir App Service planı oluşturulmaktadır:The following example creates an App Service plan named myAppServicePlan in the Free pricing tier:

az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku FREE

App Service planı oluşturulduğunda Azure CLI, aşağıdaki örneğe benzer bilgiler gösterir:When the App Service plan has been created, the Azure CLI shows information similar to the following example:

{ 
  "adminSiteName": null,
  "appServicePlanName": "myAppServicePlan",
  "geoRegion": "South Central US",
  "hostingEnvironmentProfile": null,
  "id": "/subscriptions/0000-0000/resourceGroups/myResourceGroup/providers/Microsoft.Web/serverfarms/myAppServicePlan",
  "kind": "app",
  "location": "South Central US",
  "maximumNumberOfWorkers": 1,
  "name": "myAppServicePlan",
  < JSON data removed for brevity. >
  "targetWorkerSizeId": 0,
  "type": "Microsoft.Web/serverfarms",
  "workerTierName": null
} 

Web uygulaması oluşturunCreate a web app

Cloud Shell’de, az webapp create komutuyla myAppServicePlan App Service planında bir web uygulaması oluşturun.In the Cloud Shell, create a web app in the myAppServicePlan App Service plan with the az webapp create command.

Aşağıdaki örnekte <app_name> kısmını genel olarak benzersiz bir uygulama adıyla değiştirin (geçerli karakterler a-z, 0-9 ve - şeklindedir).In the following example, replace <app_name> with a globally unique app name (valid characters are a-z, 0-9, and -).

# Bash and Powershell
az webapp create --resource-group myResourceGroup --plan myAppServicePlan --name <app_name>

Web uygulaması oluşturulduğunda Azure CLI aşağıda yer alan çıktıdaki gibi bilgiler gösterir:When the web app has been created, the Azure CLI shows output similar to the following example:

{
  "availabilityState": "Normal",
  "clientAffinityEnabled": true,
  "clientCertEnabled": false,
  "cloningInfo": null,
  "containerSize": 0,
  "dailyMemoryTimeQuota": 0,
  "defaultHostName": "<app_name>.azurewebsites.net",
  "enabled": true,
  < JSON data removed for brevity. >
}

Node.js çalışma zamanını ayarlamaSet Node.js runtime

Düğüm çalışma zamanı için 10.14.1 ayarlayın.Set the Node runtime to 10.14.1. Desteklenen tüm çalışma zamanları görmek için az webapp list-runtimes komutunu çalıştırın.To see all supported runtimes, run az webapp list-runtimes.

# Bash and Powershell
az webapp config appsettings set --resource-group myResourceGroup --name <app_name> --settings WEBSITE_NODE_DEFAULT_VERSION=10.14.1

Yeni oluşturduğunuz web uygulamasına göz atın.Browse to your newly created web app. Değiştirin <app_name> benzersiz bir uygulama adına sahip.Replace <app_name> with a unique app name.

http://<app_name>.azurewebsites.net

Yeni web uygulamanız aşağıdaki gibi görünmelidir:Here is what your new web app should look like:

Boş web uygulaması sayfası

ZIP dosyası dağıtmaDeploy ZIP file

Tarayıcıda https://<app_name>.scm.azurewebsites.net/ZipDeployUI adresine gidin.In the browser, navigate to https://<app_name>.scm.azurewebsites.net/ZipDeployUI.

Proje ZIP dosyası oluşturma başlığı altında oluşturduğunuz ZIP dosyasını, web sayfasındaki dosya gezgini alanına sürükleyerek karşıya yükleyin.Upload the ZIP file you created in Create a project ZIP file by dragging it to the file explorer area on the web page.

Dağıtım devam ederken sağ üst köşedeki bir simge yüzde cinsinden ilerleme durumunu gösterir.When deployment is in progress, an icon in the top right corner shows you the progress in percentage. Ayrıca sayfada, gezgin alanının altında işlemin ayrıntılı iletileri de gösterilir.The page also shows verbose messages for the operation below the explorer area. Tamamlandığında, son dağıtım iletisi Deployment successful şeklinde olmalıdır.When it is finished, the last deployment message should say Deployment successful.

Uygulamaya göz atmaBrowse to the app

Web tarayıcınızı kullanarak, dağıtılan uygulamanın konumuna gidin.Browse to the deployed application using your web browser.

http://<app_name>.azurewebsites.net

Node.js örnek kodu bir Azure App Service web uygulamasında çalışıyor.The Node.js sample code is running in an Azure App Service web app.

Azure'da çalışan örnek uygulama

Tebrikler!Congratulations! App Service’e ilk Node.js uygulamanızı dağıttınız.You've deployed your first Node.js app to App Service.

Kodu güncelleştirme ve yeniden dağıtmaUpdate and redeploy the code

Bir metin düzenleyici kullanarak index.js dosyasını Node.js uygulaması içinde açın ve response.end çağrısındaki metinde küçük bir değişiklik yapın:Using a text editor, open the index.js file in the Node.js app, and make a small change to the text in the call to response.end:

response.end("Hello Azure!");

Yerel terminal penceresinde, uygulamanızın gidin kök dizini (içeren dizine index.js), güncelleştirilmiş projeniz için yeni bir ZIP dosyası oluşturun.In the local terminal window, navigate to your application's root directory (the directory that contains index.js), create a new ZIP file for your updated project.

# Bash
zip -r myUpdatedAppFiles.zip .

# PowerShell
Compress-Archive -Path * -DestinationPath myUpdatedAppFiles.zip

ZIP dosyası dağıtma'daki adımları kullanarak bu yeni ZIP dosyasını App Service'e dağıtın.Deploy this new ZIP file to App Service, using the same steps in Deploy ZIP file.

Uygulamaya göz atma adımında açılan tarayıcı penceresine dönüp sayfayı yenileyin.Switch back to the browser window that opened in the Browse to the app step, and refresh the page.

Azure'da çalışan güncelleştirilmiş örnek uygulama

Yeni Azure uygulamanızı yönetmeManage your new Azure app

Oluşturduğunuz web uygulamasını yönetmek için Azure portalına gidin.Go to the Azure portal to manage the web app you created.

Sol menüden uygulama hizmetlerive ardından Azure uygulamanızın adına tıklayın.From the left menu, click App Services, and then click the name of your Azure app.

Azure uygulamasına portal gezintisi

Web uygulamanızın Genel Bakış sayfasını görürsünüz.You see your web app's Overview page. Buradan göz atma, durdurma, başlatma, yeniden başlatma ve silme gibi temel yönetim görevlerini gerçekleştirebilirsiniz.Here, you can perform basic management tasks like browse, stop, start, restart, and delete.

Azure portalında App Service sayfası

Soldaki menü, uygulamanızı yapılandırmak için farklı sayfalar sağlar.The left menu provides different pages for configuring your app.

Kaynakları temizlemeClean up resources

Önceki adımlarda, bir kaynak grubunda Azure kaynakları oluşturdunuz.In the preceding steps, you created Azure resources in a resource group. Bu kaynakların gelecekte gerekli olacağını düşünmüyorsanız, Cloud Shell’de aşağıdaki komutu çalıştırarak kaynak grubunu silin:If you don't expect to need these resources in the future, delete the resource group by running the following command in the Cloud Shell:

az group delete --name myResourceGroup

Bu komutun çalıştırılması bir dakika sürebilir.This command may take a minute to run.

Sonraki adımlarNext steps