Megosztás a következőn keresztül:


Node.js-alkalmazás közzététele az Azure-ban (Linux App Service)

Ez az oktatóanyag végigvezeti egy egyszerű Node.js alkalmazás létrehozásának és az Azure-ban való közzétételének feladatán.

Ha Node.js-alkalmazást tesz közzé az Azure-ban, számos lehetőség közül választhat. Ilyen például az Azure App Service, a választott operációs rendszert futtató virtuális gép, az Azure Container Service (AKS) a Kubernetes-lel való felügyelethez, egy Dockert használó tárolópéldány stb. Ezekről a lehetőségekről további információt Computecímű témakörben talál.

Ebben az oktatóanyagban a Linux App Serviceszolgáltatásába helyezi üzembe az alkalmazást. A Linux App Service egy Linux Docker-tárolót helyez üzembe a Node.js alkalmazás futtatásához (szemben a Windows App Service szolgáltatással, amely Node.js alkalmazásokat futtat az IIS mögött Windows rendszeren).

Ez az oktatóanyag bemutatja, hogyan hozhat létre Node.js alkalmazást a Node.js Tools for Visual Studióval telepített sablonból, hogyan küldheti le a kódot egy GitHub-adattárba, majd hogyan építhet ki egy Azure App Service-t az Azure webportálon keresztül, hogy üzembe helyezhesse a GitHub-adattárból. Az Azure App Service üzembe helyezéséhez és a kód helyi Git-adattárból való leküldéséhez a parancssor használatával lásd: Node.js alkalmazás létrehozása.

Fontos

A cikkben szereplő információk csak a Node.js projekttípusra (.njsproj) vonatkoznak. A cikkben használt sablon már nem érhető el a Visual Studio 2022 17.8 Preview 2-es verziójától kezdve.

Ebben az oktatóanyagban a következőket sajátíthatja el:

  • Node.js-projekt létrehozása
  • GitHub-adattár létrehozása a kódhoz
  • Linux App Service létrehozása az Azure-ban
  • Üzembe helyezés Linuxon

Előfeltételek

  • Telepítve kell lennie a Visual Studio-nak és a Node.js fejlesztési csomagnak.

    Ha még nem telepítette a Visual Studio 2019-et, lépjen a Visual Studio letöltési lapjára, és telepítse ingyenesen.

    Ha telepítenie kell a feladatkört, de már van Visual Studio telepítve, lépjen a(z) Eszközök>Eszközök és szolgáltatások lekérése...pontra, amely megnyitja a Visual Studio Telepítőt. Válassza ki a Node.js fejlesztési munkaterhelést, majd válassza a Módosításlehetőséget.

    Node.js munkaterhelés a VS Installer

  • A Node.js futtatókörnyezetnek telepítve kell lennie.

    Ha nincs telepítve, telepítse az LTS-verziót a Node.js webhelyről. A Visual Studio általában automatikusan észleli a telepített Node.js futtatókörnyezetet. Ha nem észlel telepített futtatókörnyezetet, konfigurálhatja a projektet úgy, hogy a tulajdonságok lapon hivatkozzon a telepített futtatókörnyezetre (a projekt létrehozása után kattintson a jobb gombbal a projektcsomópontra, és válassza a Tulajdonságok).

Node.js-projekt létrehozása az Azure-ban való futtatáshoz

  1. Nyissa meg a Visual Studiót.

  2. Hozzon létre egy új TypeScript Express-alkalmazást.

    A kezdőablak bezárásához nyomja le Esc. Írja be a Ctrl + Q billentyűkombinációt a keresőmező megnyitásához, írja be a Node.js, majd válassza az Új Alapszintű Azure Node.js Express 4-alkalmazás (TypeScript) létrehozása lehetőséget. A megjelenő párbeszédpanelen válassza a létrehozása lehetőséget.

    Ha nem látja az Alapszintű Azure Node.js Express 4-alkalmazás projektsablont, hozzá kell adnia a Node.js fejlesztési számítási feladatot. Részletes útmutatásért lásd az előfeltételek.

    A Visual Studio létrehozza a projektet, és megnyitja a Megoldáskezelőben (jobb oldali panelen).

  3. Az alkalmazás létrehozásához és futtatásához nyomja le F5, és győződjön meg arról, hogy minden a várt módon fut.

  4. Válassza a Fájl>Hozzáadás a forráskód-kezelőhöz lehetőséget a projekt helyi Git-adattárának létrehozásához.

    Jelenleg az Express keretrendszert használó és TypeScriptben írt Node.js alkalmazás működik, és be van jelentkezve a helyi forrásvezérlőbe.

  5. Szerkessze a projektet a kívánt módon, mielőtt továbblép a következő lépésekre.

Kód leküldése a Visual Studióból a GitHubra

GitHub beállítása a Visual Studio számára:

  1. Győződjön meg arról, hogy a Visual Studio GitHub-bővítmény telepítve van és engedélyezve van a Eszközök>Bővítmények és frissítésekmenüpont használatával.

  2. A menüben válassza a Nézet>Egyéb Windows>GitHublehetőséget.

    Megnyílik a GitHub ablaka.

  3. Ha nem látja az Első lépések gombot a GitHub ablakban, kattintson Fájl>Hozzáadás a forrásvezérlő elemre, és várja meg, amíg a felhasználói felület frissül.

    GitHub-ablak megnyitása

  4. Kattintson Első lépésekgombra.

    Ha már csatlakozott a GitHubhoz, az eszközkészlet az alábbi ábrához hasonlóan jelenik meg.

    GitHub-adattár beállításai

  5. Töltse ki a közzétenni kívánt új adattár mezőit, majd kattintson a Közzétételgombra.

    Néhány pillanat múlva megjelenik a "Sikeresen létrehozott adattár" feliratú transzparens.

    A következő szakaszban megtudhatja, hogyan teheti közzé ezt az adattárat egy Linuxon futó Azure App Service-ben.

Linux App Service létrehozása az Azure-ban

  1. Jelentkezzen be az Azure Portal .

  2. Válassza a bal oldali szolgáltatások listájából az App Services--t, majd kattintson a Hozzáadásgombra.

  3. Szükség esetén hozzon létre egy új erőforráscsoport- és App Service-csomagot az új alkalmazás üzemeltetéséhez.

  4. Győződjön meg arról, hogy a operációs rendszer a Linuxlegyen beállítva, és állítsa a Runtime Stack-t a szükséges Node.js verzióra, ahogy az ábrán látható.

    Egy Linux App Service létrehozása

  5. Kattintson létrehozása gombra az App Service létrehozásához.

    Az üzembe helyezés eltarthat néhány percig.

  6. Az üzembe helyezés után lépjen a Alkalmazásbeállítások szakaszra, és adjon hozzá egy SCM_SCRIPT_GENERATOR_ARGS nevű és --nodeértékű beállítást.

    alkalmazásbeállítások

    Figyelmeztetés

    Az App Service üzembe helyezési folyamata heurisztikus halmazt használ annak meghatározásához, hogy melyik alkalmazástípust próbálja meg futtatni. Ha a .sln fájl észlelhető az üzembe helyezett tartalomban, feltételezi, hogy egy MSBuild-alapú projekt van üzembe helyezve. A fenti beállítás felülírja ezt a logikát, és explicit módon megadja, hogy ez egy Node.js alkalmazás. E beállítás nélkül a Node.js alkalmazás nem lesz üzembe helyezve, ha a .sln fájl az App Service-ben üzembe helyezett adattár része.

  7. Az alkalmazásbeállításokterületen adjon hozzá egy másik beállítást WEBSITE_NODE_DEFAULT_VERSION nevével és 8.9.0értékével.

  8. Az üzembe helyezés után nyissa meg az App Service-t, és válassza üzembe helyezési beállításokat.

    üzembe helyezési lehetőségek

  9. Kattintson a Forráskiválasztása elemre, majd válassza GitHublehetőséget, majd konfigurálja a szükséges engedélyeket.

    GitHub-engedélyek

  10. Jelölje ki a közzétenni kívánt adattárat és ágat, majd válassza OKlehetőséget.

    Közzététele a Linux App Service- -ben

    Szinkronizálás közben megjelenik a telepítési beállítások lap.

    GitHub- üzembe helyezése és szinkronizálása

    A szinkronizálás befejezése után megjelenik egy pipa.

    A webhely most a GitHub-adattárból futtatja a Node.js alkalmazást, és az Azure App Service-hez létrehozott URL-címen érhető el (alapértelmezés szerint az Azure App Service-nek adott név, majd .azurewebsites.net).

Az alkalmazás módosítása és a módosítások leküldése

  1. Adja hozzá az itt látható kódot app.ts a sor app.use('/users', users);után. REST API-t ad hozzá az URL /apihelyen.

    app.use('/api', (req, res, next) => {
        res.json({"result": "success"});
    });
    
  2. Hozza létre a kódot, és tesztelje helyileg, majd jelentkezzen be, és küldje el a GitHubra.

    Az Azure Portalon néhány pillanat alatt észlelheti a GitHub-adattár változásait, majd elindul az üzembe helyezés új szinkronizálása. Ez az alábbi ábrához hasonlóan néz ki.

    módosítása és szinkronizálása

  3. Az üzembe helyezés befejezése után lépjen a nyilvános helyre, és fűzze hozzá /api az URL-címhez. A rendszer visszaadja a JSON-választ.

Hibaelhárítás

  • Ha a node.exe folyamat meghal (vagyis kezeletlen kivétel történik), a tároló újraindul.
  • Amikor a tároló elindul, különböző heurisztikai eljárásokkal állapítja meg, hogyan indíthatja el a Node.js folyamatot. A megvalósítás részletei megtekinthetők a generateStartupCommand.jshelyeken.
  • A vizsgálathoz SSH-val csatlakozhat a futó tárolóhoz. Ez egyszerűen elvégezhető az Azure Portal használatával. Válassza ki az App Service-t, és görgessen lefelé az eszközök listájában, amíg el nem éri SSH- a Fejlesztői eszközök szakaszban.
  • A hibaelhárításhoz lépjen a Diagnosztikai naplók App Service beállításaihoz, és módosítsa a Docker-tároló naplózási beállítását a Ki beállításról fájlrendszer. A naplók a konténerben a /home/LogFiles/_docker.log* könyvtárban jönnek létre, és SSH vagy FTP(S) használatával érhetők el a szerveren.
  • Előfordulhat, hogy az alapértelmezett *.azurewebsites.net URL-cím helyett egyéni tartománynév van hozzárendelve a webhelyhez. További részletekért lásd a Egyéni tartomány leképezésecímű témakört.
  • Ajánlott eljárás az előkészítési helyen történő üzembe helyezés további tesztelés céljából, mielőtt éles környezetbe lépne. Ennek konfigurálásáról további információt Átmeneti környezetek létrehozásacímű témakörben talál.
  • További gyakori kérdésekért tekintse meg a App Service-t Linuxon – gyakori kérdések.

Következő lépések

Ebben az oktatóanyagban megtanulta, hogyan hozhat létre Linux App Service-t, és hogyan helyezhet üzembe egy Node.js alkalmazást a szolgáltatásban. Érdemes lehet többet megtudni a Linux App Service-ről.