Node.js-webalkalmazás üzembe helyezése az Azure-ban

Ebben a rövid útmutatóban megtudhatja, hogyan hozhatja létre és helyezheti üzembe első Node.js (Express) webalkalmazását az Azure App Service-ben. Az App Service támogatja a Node.js különböző verzióit Linuxon és Windowson egyaránt.

Az Azure CLI lépései ebben a gyorsindításban a fizetős Premium v3 szintet használják. A Visual Studio Code és az Azure portal lépései megmutatják, hogyan lehet használni a Free szintet.

Ez a videó bemutatja, hogyan helyezhet üzembe Node.js webalkalmazást az Azure-ban.

A videó lépéseit a következő szakaszokban is ismertetjük.

A kezdeti környezet beállítása

  • Rendelkezik aktív előfizetéssel rendelkező Azure-fiókkal. Ha nem rendelkezik ilyen fiókkal, ingyenesen létrehozhat fiókot.
  • Telepítse Node.js LTS-t. Futtassa a parancsot node --version a Node.js telepítésének ellenőrzéséhez.
  • Telepítse az Azure CLI-t, amellyel parancsokat futtathat egy rendszerhéjban az Azure-erőforrások létrehozásához és konfigurálásához.
  • Rendelkezik aktív előfizetéssel rendelkező Azure-fiókkal. Ha nem rendelkezik ilyen fiókkal, ingyenesen létrehozhat fiókot.
  • Telepítse Node.js LTS-t. Futtassa a parancsot node --version a Node.js telepítésének ellenőrzéséhez.
  • Ftp-ügyfél (például FileZilla) használatával fájlokat továbbíthat az App Service-be.

A Node.js-alkalmazás létrehozása

Ebben a lépésben létrehoz egy alapszintű Node.js alkalmazást, és gondoskodik arról, hogy az a számítógépen fusson.

Tipp.

Ha már elvégezte a Node.js oktatóanyagot, továbbléphet az Azure-beli üzembe helyezésre.

  1. Hozzon létre egy Node.js alkalmazást az expressz alkalmazásgenerátor használatával, amely alapértelmezés szerint Node.js és npm használatával van telepítve.

    npx express-generator myExpressApp --view ejs
    

    Ha ez az első alkalom, hogy telepítette a generátort, az npx megkéri, hogy fogadja el a telepítést.

  2. Váltson az alkalmazás könyvtárára, és telepítse az npm-csomagokat.

    cd myExpressApp && npm install
    
  3. Frissítse a függőségeket a legbiztonságosabb verzióra.

    npm audit fix --force
    
  4. Indítsa el a fejlesztői kiszolgálót hibakeresési információkkal.

    DEBUG=myexpressapp:* npm start
    
  5. A böngészőben navigáljon el a következőre http://localhost:3000. Ennek nagyjából a következőképpen kell kinéznie:

    Képernyőkép egy böngészőben futó Express-alkalmazásról.

Üzembe helyezés az Azure-ban

A folytatás előtt győződjön meg arról, hogy minden előfeltétel telepítve és konfigurálva van.

Megjegyzés

Ahhoz, hogy az Node.js alkalmazás az Azure-ban fusson, figyelnie kell a PORT környezeti változó által biztosított portot. A létrehozott Express-alkalmazásban ez a környezeti változó már használatban van az indítási szkript tárolójában/www. (Keresés a következőre: process.env.PORT)

Bejelentkezés az Azure-ba

  1. A terminálban győződjön meg arról, hogy a myExpressApp könyvtárban van, majd indítsa el a Visual Studio Code-ot a következő paranccsal:

    code .
    
  2. A Visual Studio Code tevékenységsávjában válassza ki az Azure-emblémát.

  3. Győződjön meg arról, hogy bejelentkezett az Azure-fiókjával.

Az App Service-alkalmazás konfigurálása és a kód üzembe helyezése

  1. Kattintson a jobb gombbal az App Servicesre , és válassza az Új webalkalmazás létrehozása lehetőséget. A rendszer alapértelmezés szerint linuxos tárolót használ.

  2. Írjon be egy globálisan egyedi nevet a webalkalmazásnak, és válassza az Enter lehetőséget. A névnek az összes Azure-ban egyedinek kell lennie, és csak alfanumerikus karaktereket (A-Z, a-zés ) és 0-9kötőjeleket (-) kell használnia.

  3. A Futtatókörnyezet kiválasztása csoportban válassza ki a kívánt Node.js verziót. A Node 24 LTS használata ajánlott.

  4. A Tarifacsomag kiválasztása területen válassza az Ingyenes (F1) lehetőséget, és várja meg, amíg az erőforrások létrejönnek az Azure-ban.

  5. Az előugró ablakban "Mindig telepítse a 'myExpressApp' munkaterületet az <app-name>"-re válassza az Igen lehetőséget. Ezzel biztosítja, hogy mindaddig, amíg ugyanabban a munkaterületen van, a Visual Studio Code minden alkalommal ugyanarra az App Service-alkalmazásra telepedik.

    Bár a Visual Studio Code létrehozza az Azure-erőforrásokat, és üzembe helyezi a kódot, állapotértesítéseket jelenít meg.

  6. Az üzembe helyezés befejezése után válassza a Webhely tallózása lehetőséget az értesítési előugró ablakban. A böngészőnek meg kell jelennie az Express alapértelmezett lapjának.

A terminálban győződj meg róla, hogy a myExpressApp könyvtárban vagy. Cseréld le a(z) <app-name> elemet egy globálisan egyedi névre, majd hozd létre az erőforráscsoportot, az App Service-csomagot és az alkalmazást. Úgy állítsd be a SCM_DO_BUILD_DURING_DEPLOYMENT értékét, hogy az App Service telepítse a függőségeket és építse az alkalmazást, amikor közzéteszed a forrásarchívumot.

az group create --name myResourceGroup --location eastus
az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku P0v3 --is-linux
az webapp create --name <app-name> --resource-group myResourceGroup --plan myAppServicePlan --runtime "NODE:24-lts"
az webapp config appsettings set --name <app-name> --resource-group myResourceGroup --settings SCM_DO_BUILD_DURING_DEPLOYMENT=true
  • Ha a az parancs nem ismerhető fel, győződjön meg arról, hogy az Azure CLI telepítve van a kezdeti környezet beállítása című cikkben leírtak szerint.
  • Cseréld <app-name> le egy olyan nevet, amely az egész Azure-ban egyedi (érvényes karakterek: a-z, 0-9, és -).
  • Az argumentum --sku P0v3 a fizetett Premium v3 árszintet választja. Cseréld le a(z) eastus elemet a kívánt régióra; listázd fel az elérhető régiókat a az account list-locations használatával.
  • --is-linux kiválaszt egy Linux csomagot. Hagyd ki egy Windows csomagnál, ahogy a Windows fülön látható.

Hozz létre egy ZIP archívumot a myExpressApp könyvtárban lévő fájlokból, ne a befoglaló könyvtárból. Linuxon vagy macOS-en futtasd a(z) zip -r ../app.zip . -x '*/node_modules/*' '*/.git/*' '*/.env*' parancsot a myExpressApp mappából. Windows alatt futtasd Compress-Archive -Path (Get-ChildItem -Force -Name | Where-Object { $_ -notin @('node_modules', '.git') -and $_ -notlike '.env*' }) -DestinationPath ..\app.zip a PowerShellben a myExpressApp-ből. Ezután telepítsd az archívumot:

az webapp deploy --resource-group myResourceGroup --name <app-name> --src-path ../app.zip --type zip

Lépjen a(z) https://<app-name>.azurewebsites.net helyre az alkalmazás megtekintéséhez.

Azure-erőforrások létrehozása

  1. Jelentkezzen be az Azure Portalra.

  2. Node.js alkalmazás létrehozásához böngésszen a következő helyre: https://portal.azure.com/#create/Microsoft.WebSite.

  3. Az Alapszintű beállítások lap Projekt részletei csoportjában győződjön meg arról, hogy a megfelelő előfizetés van kiválasztva, majd válassza az Új létrehozása lehetőséget egy erőforráscsoport létrehozásához. Írja be myResourceGroup nevet.

    Képernyőkép a Projekt részletei szakaszról, amelyen az Azure-előfizetés és a webalkalmazás erőforráscsoportjának kiválasztása látható.

  4. A Példány részletei csoportban írjon be egy globálisan egyedi nevet a webalkalmazásnak, és válassza a Kód lehetőséget. Válassza ki a Node 24 LTS-t a futtatókörnyezeti veremben, operációs rendszerben és régióban, amelyekben az alkalmazást ki szeretné szolgálni.

    Képernyőkép a példány részleteinek szakaszáról.

  5. A Díjszabási csomagok területen válassza az Új létrehozása lehetőséget az App Service-csomag létrehozásához. Írja be a myAppServicePlan nevet. Ha ingyenes szintre szeretne váltani, válassza az Ingyenes F1 lehetőséget a Tarifacsomag listában.

    Képernyőkép az App Service-csomagról.

  6. Válassza a Lap alján található Véleményezés + létrehozás gombot.

    Képernyőkép a Lap alján található Véleményezés és létrehozás gombról

  7. Az ellenőrzési futtatások után válassza a lap alján lévő Létrehozás gombot.

  8. Az üzembe helyezés befejezése után válassza az Erőforrás megnyitása lehetőséget.

    Képernyőkép az Erőforrás megnyitása gombról.

FTPS-hitelesítő adatok lekérése

Azure-alkalmazás szolgáltatás kétféle hitelesítő adatot támogat az FTP/S üzembe helyezéséhez. Ezek a hitelesítő adatok nem azonosak az Azure-előfizetés hitelesítő adataival. Ebben a szakaszban lekérheti az FTP-ügyfélhez használandó alkalmazáshatókör-hitelesítő adatokat.

  1. Az App Service alkalmazáslapján válassza az Üzembe helyezési központ az oldalsáv menüjében, majd válassza az FTPS Hitelesítő adatok fül-t.

    Képernyőkép az FTPS üzembehelyezési hitelesítő adatainak lapról.

  2. Nyissa meg az FTP-ügyfelet, és keresse meg a myExpressApp mappát.

  3. Az FTPS hitelesítő adatok lapján másolja az FTPS-végpontot, a felhasználónevet és a jelszót az FTP-ügyfélbe.

    Képernyőkép az FTPS-kapcsolat részleteiről.

  4. Válassza a Csatlakozás lehetőséget az FTP-ügyfélen.

Fájlok üzembe helyezése FTPS használatával

  1. Másolja az összes fájlt és könyvtárat az Azure /site/wwwroot könyvtárába .

    Képernyőkép a WWW gyökérkönyvtáráról.

  2. Keresse meg az alkalmazás URL-címét, és ellenőrizze, hogy az alkalmazás megfelelően működik-e.

Frissítések ismételt üzembe helyezése

Az alkalmazás módosításait a Visual Studio Code szerkesztésével, a fájlok mentésével, majd az Azure-alkalmazásba való ismételt üzembe helyezéssel helyezheti üzembe. Példa:

  1. A mintaprojektben nyissa meg a views/index.ejs fájlt, és módosítsa a

    <p>Welcome to <%= title %></p>
    

    felhasználóként a(z)

    <p>Welcome to Azure</p>
    
  1. Az App Service Explorerben válassza ismét a Webalkalmazás telepítése ikont, és erősítse meg a Telepítés gombra kattintva.

  2. Várja meg, amíg az üzembe helyezés befejeződik, majd válassza a Webhely tallózása lehetőséget az értesítési előugró ablakban. Látnia kell, hogy az Welcome to Express üzenet megváltozott Welcome to Azure.

  1. Mentsd el a változtatásokat, hozd létre újra a ../app.zip fájlt az alkalmazásfájlokból a Deploy to Azure című témakörben leírtak szerint, majd telepítsd újra:

    az webapp deploy --resource-group myResourceGroup --name <app-name> --src-path ../app.zip --type zip
    

    Cseréld <app-name> le azt a nevet, amit a webalkalmazás létrehozásakor használtál.

  2. Az üzembe helyezés befejezése után frissítse a weblapot. Látnia kell, hogy az Welcome to Express üzenet megváltozott Welcome to Azure.

  1. Mentse a módosításokat, majd telepítse újra az alkalmazást az FTP-ügyféllel.

  2. Az üzembe helyezés befejezése után frissítse a weblapot. Látnia kell, hogy az Welcome to Express üzenet megváltozott Welcome to Azure.

Naplófolyamok

Közvetlenül az Azure alkalmazásból streamelheti a naplókimenetet a Visual Studio Code kimeneti ablakában.

  1. A Visual Studio Code-erőforrásokban kattintson a jobb gombbal az alkalmazáscsomópontra, majd válassza a Streamnaplók indítása parancsot.

    Képernyőkép a streamelési naplók indításának lehetőségéről.

  2. Ha az alkalmazás újraindítására van szükség, válassza az Igen lehetőséget. Az alkalmazás újraindítása után megnyílik a Visual Studio Code kimeneti ablaka a naplóstreamhez való kapcsolattal.

  3. Néhány másodperc elteltével a kimeneti ablakban megjelenik egy üzenet, amely jelzi, hogy csatlakozik a naplóstreamelési szolgáltatáshoz. A böngészőben a lap frissítésével további kimeneti tevékenységeket hozhat létre.

    Connecting to log stream...
    2020-03-04T19:29:44  Welcome, you are now connected to log-streaming service. The default timeout is 2 hours.
    Change the timeout with the App Setting SCM_LOGSTREAM_TIMEOUT (in seconds).
    

Hozzáférhetsz az alkalmazáson belülről létrehozott konzolnaplókhoz és ahhoz a tárolóhoz, amelyben fut. A naplók tartalmazzák bármilyen kimenetet, amit a console.log() hívás generál.

Naplók streameléséhez futtassa az az webapp log tail parancsot:

  • Először engedélyezd a naplózást: Linuxon futtasd az webapp log config --resource-group myResourceGroup --name <app-name> --docker-container-logging filesystem; Windows-on futtasd az webapp log config --resource-group myResourceGroup --name <app-name> --application-logging filesystem.
az webapp log tail --resource-group myResourceGroup --name <app-name>

Cseréld <app-name> le azt a nevet, amit a webalkalmazás létrehozásakor használtál.

Frissítse az alkalmazást a böngészőben a konzolnaplók létrehozásához, amelyek tartalmazzák az alkalmazásnak küldött HTTP-kéréseket leíró üzeneteket. Ha nem jelenik meg azonnal kimenet, próbálkozzon újra 30 másodperc múlva.

Ha bármikor le szeretné állítani a naplóstreamelést, válassza a Ctrl C billentyűkombinációt+a terminálban.

Hozzáférhetsz az alkalmazáson belülről létrehozott konzolnaplókhoz és ahhoz a tárolóhoz, amelyben fut. A naplókimenetet (hívásokat console.log()) közvetlenül az Azure Portalon streamelheti az Node.js alkalmazásból.

  1. Az alkalmazás ugyanazon App Service-lapján az oldalsáv menüjében görgessen a Figyelés szakaszhoz, és válassza a Naplóstream lehetőséget.

    Képernyőkép a naplóstreamről Azure-alkalmazás szolgáltatásban.

  2. Néhány másodperc elteltével a kimeneti ablakban megjelenik egy üzenet, amely jelzi, hogy csatlakozik a naplóstreamelési szolgáltatáshoz. A böngészőben a lap frissítésével további kimeneti tevékenységeket hozhat létre.

    Connecting...
    2021-10-26T21:04:14  Welcome, you are now connected to log-streaming service.
    Starting Log Tail -n 10 of existing logs ----
    /appsvctmp/volatile/logs/runtime/81b1b83b27ea1c3d598a1cdec28c71c4074ce66c735d0be57f15a8d07cb3178e.log
    2021-10-26T21:04:08.614384810Z: [INFO]
    2021-10-26T21:04:08.614393710Z: [INFO]  # Enter the source directory to make sure the script runs where the user expects
    2021-10-26T21:04:08.614399010Z: [INFO]  cd "/home/site/wwwroot"
    2021-10-26T21:04:08.614403210Z: [INFO]
    2021-10-26T21:04:08.614407110Z: [INFO]  export NODE_PATH=/usr/local/lib/node_modules:$NODE_PATH
    2021-10-26T21:04:08.614411210Z: [INFO]  if [ -z "$PORT" ]; then
    2021-10-26T21:04:08.614415310Z: [INFO]          export PORT=8080
    2021-10-26T21:04:08.614419610Z: [INFO]  fi
    2021-10-26T21:04:08.614423411Z: [INFO]
    2021-10-26T21:04:08.614427211Z: [INFO]  node /opt/startup/default-static-site.js
    Ending Log Tail of existing logs ---
    

Az erőforrások tisztítása

Az előző lépésekben Azure-erőforrásokat hozott létre egy erőforráscsoportban. A rövid útmutató lépései az összes erőforrást ebbe az erőforráscsoportba helyezik. A törléshez csak el kell távolítania az erőforráscsoportot.

  1. A Visual Studio Code Azure-bővítményében, a Csoport szerint listában válassza a Csoportosítás erőforráscsoport szerint lehetőséget.

  2. Az Erőforrások listában bontsa ki az előfizetést, kattintson a jobb gombbal a korábban létrehozott erőforráscsoportra, majd válassza az Erőforráscsoport törlése lehetőséget.

    Képernyőkép az App Service-erőforrásokat tartalmazó erőforrás törléséhez szükséges Visual Studio Code-navigációról.

  3. Amikor a rendszer kéri, erősítse meg a törlést a törölni kívánt erőforráscsoport nevének megadásával. A megerősítés után az erőforráscsoport törlődik, és megjelenik egy értesítés , ha elkészült.

Az előző CLI lépésekben Azure erőforrásokat hoztál létre a myResourceGroupban.

Ha a jövőben nem lesz szüksége ezekre az erőforrásokra, törölje az erőforráscsoportot az alábbi parancs futtatásával:

az group delete --name myResourceGroup --no-wait

Az --no-wait argumentum lehetővé teszi a parancs visszatérését a művelet befejezése előtt.

Ha már nincs rájuk szükség, törölheti az erőforráscsoportot, az App Service-t és az összes kapcsolódó erőforrást.

  1. Az App Service áttekintési lapján válassza ki az Azure-erőforrások létrehozása lépésben létrehozott erőforráscsoportot.

    Képernyőkép az Erőforráscsoportról az App Service áttekintési oldalán.

  2. Az erőforráscsoport lapján válassza az Erőforráscsoport törlése lehetőséget. Az erőforrások törlésének befejezéséhez erősítse meg az erőforráscsoport nevét.

    Az erőforráscsoport törlése képernyőképe.

Gratulálunk, sikeresen elvégezte ezt a rövid útmutatót!

Tekintse meg a többi Azure-bővítményt.

Vagy lekérheti őket az Azure-hoz készült Node Pack bővítménycsomag telepítésével.