Skapa och distribuera ett Node.js-webbprogram med Express på en Azure Cloud Services (klassisk)

Viktigt!

Cloud Services (klassisk) är nu inaktuellt för nya kunder och kommer att dras tillbaka den 31 augusti 2024 för alla kunder. Nya distributioner bör använda den nya Azure Resource Manager-baserade distributionsmodellen Azure Cloud Services (utökad support).

Node.js innehåller en minimal uppsättning funktioner i kärnkörningen. Utvecklare använder ofta moduler från tredje part för att tillhandahålla ytterligare funktioner när de utvecklar ett Node.js-program. I den här självstudien skapar du ett nytt program med hjälp av Express-modulen , som tillhandahåller ett MVC-ramverk för att skapa Node.js-webbprogram.

Nedan visas en skärmbild av det slutförda programmet:

A web browser displaying Welcome to Express in Azure

Skapa ett molntjänstprojekt

Kommentar

För att slutföra det här avsnittet måste du ha en fungerande installation av Node.js och Azure SDK för Node.js för din plattform.

Utför följande steg för att skapa ett nytt molntjänstprojekt med namnet expressapp:

  1. Från Start-menyn eller Startskärmen söker du efter Windows PowerShell. Högerklicka slutligen på Windows PowerShell och välj Kör som administratör.

    Azure PowerShell icon

  2. Ändra kataloger till katalogen c:\node och ange sedan följande kommandon för att skapa en ny lösning med namnet expressapp och en webbroll med namnet WebRole1:

    PS C:\node> New-AzureServiceProject expressapp
    PS C:\Node\expressapp> Add-AzureNodeWebRole
    PS C:\Node\expressapp> Set-AzureServiceProjectRole WebRole1 Node 0.10.21
    

    Kommentar

    Som standard använder Add-AzureNodeWebRole en äldre version av Node.js. Instruktionen Set-AzureServiceProjectRole ovan instruerar Azure att använda v0.10.21 av Node. Observera att parametrarna är skiftlägeskänsliga. Du kan kontrollera att rätt version av Node.js har valts genom att kontrollera motoregenskapen i WebRole1\package.json.

Installera Express

  1. Installera Express-generatorn genom att utfärda följande kommando:

    PS C:\node\expressapp> npm install express-generator -g
    

    Utdata från npm-kommandot bör se ut ungefär som resultatet nedan.

    Windows PowerShell displaying the output of the npm install express command.

  2. Ändra kataloger till katalogen WebRole1 och använd expresskommandot för att generera ett nytt program:

    PS C:\node\expressapp\WebRole1> express
    

    Du uppmanas att skriva över ditt tidigare program. Ange y eller ja för att fortsätta. Express genererar filen app.js och en mappstruktur för att skapa ditt program.

    The output of the express command

  3. Om du vill installera ytterligare beroenden som definierats i filen package.json anger du följande kommando:

    PS C:\node\expressapp\WebRole1> npm install
    

    The output of the npm install command

  4. Använd följande kommando för att kopiera bin/www-filen till server.js. Det gör att molntjänsten kan hitta startpunkten för det här programmet.

    PS C:\node\expressapp\WebRole1> copy bin/www server.js
    

    När det här kommandot har slutförts bör du ha en server.js-fil i katalogen WebRole1.

  5. Ändra server.js för att ta bort något av tecknen från följande rad.

    var app = require('../app');
    

    När du har gjort den här ändringen bör raden visas på följande sätt.

    var app = require('./app');
    

    Den här ändringen krävs eftersom vi flyttade filen (tidigare bin/www) till samma katalog som appfilen som krävs. När du har gjort den här ändringen sparar du filen server.js .

  6. Använd följande kommando för att köra programmet i Azure-emulatorn:

    PS C:\node\expressapp\WebRole1> Start-AzureEmulator -launch
    

    A web page containing welcome to express.

Ändra vyn

Ändra nu vyn så att meddelandet "Välkommen till Express i Azure" visas.

  1. Ange följande kommando för att öppna filen index.jade:

    PS C:\node\expressapp\WebRole1> notepad views/index.jade
    

    The contents of the index.jade file.

    Jade är standardvymotorn som används av Express-program.

  2. Ändra den sista textraden genom att lägga till den i Azure.

    The index.jade file, the last line reads: p Welcome to #{title} in Azure

  3. Spara filen och avsluta Anteckningar.

  4. Uppdatera webbläsaren så ser du ändringarna.

    A browser window, the page contains Welcome to Express in Azure

När du har testat programmet använder du cmdleten Stop-AzureEmulator för att stoppa emulatorn.

Publicera programmet till Azure

I Azure PowerShell-fönstret använder du cmdleten Publish-AzureServiceProject för att distribuera programmet till en molntjänst

PS C:\node\expressapp\WebRole1> Publish-AzureServiceProject -ServiceName myexpressapp -Location "East US" -Launch

När distributionen är klar öppnas webbläsaren och webbsidan visas.

A web browser displaying the Express page. The URL indicates it is now hosted on Azure.

Nästa steg

Mer information finns i Node.js Developer Center.