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

Viktigt

Cloud Services (klassisk) är nu inaktuell för nya kunder och 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ökat stöd).

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 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.

En skärmbild av det färdiga programmet visas nedan:

En webbläsare som visar Välkommen till Express i Azure

Skapa en Project

Anteckning

För att kunna 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. 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 ikon

  2. Ändra katalogerna 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
    

    Anteckning

    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 fallkänsliga. Du kan kontrollera att rätt version av Node.js har valts genom att kontrollera motoregenskapen iWebRole1\package.jspå.

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 i resultatet nedan.

    Windows PowerShell visar utdata från kommandot npm install express.

  2. Ändra katalogerna 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 yes för att fortsätta. Express genererar app.js och en mappstruktur för att skapa ditt program.

    Utdata från expresskommandot

  3. Om du vill installera ytterligare beroenden som definieras package.jspå filen anger du följande kommando:

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

    Utdata från installationskommandot npm

  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 kommandot har slutförts bör du ha en server.js i katalogen WebRole1.

  5. Ändra server.js 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 har flyttat filen (tidigare bin/www,) till samma katalog som den appfil som krävs. När du har gjort den här ändringen spararserver.jsfilen.

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

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

    En webbsida som innehåller välkommen till Express.

Ändra vyn

Ändra nu vyn för att visa meddelandet "Välkommen till Express i Azure".

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

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

    Innehållet i filen index.jade.

    Jade är standardvymotorn som används av Express-program. Mer information om Jade-vymotorn finns i http://jade-lang.com .

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

    Filen index.jade, den sista raden är: p Välkommen till # {title} i Azure

  3. Spara filen och avsluta Anteckningar.

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

    Ett webbläsarfönster, sidan innehåller Välkommen till Express i Azure

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

Publicera programmet till Azure

I fönstret Azure PowerShell 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 distributionsåtgärden har slutförts öppnas webbläsaren och webbsidan visas.

En webbläsare som visar Express-sidan. URL:en anger att den nu finns i Azure.

Nästa steg

Mer information finns i Node.js Developer Center.