Héberger des applications NodeJS sous Pleskune mise en place rapide de plesk afin de jouir de nodeJS efficacement

Si vous envisagez de fournir l'hébergement d'applications Node.js en tant que service à vos clients ou si vous souhaitez utiliser Plesk pour automatiser l'hébergement d'applications Node.js que vous développez, nous avons de bonnes nouvelles pour vous. Plesk est livré avec une extension Node.js qui vous permet d'installer et de gérer rapidement et facilement des applications. Parmi les autres fonctions clés, on trouve :

  • Utilisation des dernières versions de Node.js (LTS et Current).
  • Choix du gestionnaire de paquets : NPM ou Yarn.
  • Consultation des journaux d'application dans l'interface web de Plesk à l'aide de Log Browser,
  • Interface web très simple pour d'autres fonctions de gestion connexes.

Dans cet article, nous décrirons en détail comment travailler avec des applications Node.js dans le contexte de Plesk Obsidian, la dernière version de Plesk.

NodeJS PLESK

Prérequis

La première étape consiste à installer Plesk Obsidian. J'ai choisi Debian comme système d'exploitation du serveur pour cet article. Vous pouvez utiliser soit une distribution Linux, soit Windows, mais veuillez noter qu'il pourrait y avoir quelques légères différences si vous optez pour un système d'exploitation différent. En supposant que Plesk soit déjà installé, passons à l'installation de l'extension Node.js.

Connectez-vous à Plesk, accédez à "Outils et Paramètres", puis cliquez sur "Mises à jour et Mises à niveau". Ensuite, allez à "Ajouter/Supprimer des composants". Recherchez le composant "Prise en charge de NodeJS". Sélectionnez-le et continuez avec l'installation de Node.js. En quelques minutes, tous les composants nécessaires seront installés et vous serez prêt à partir !

Hébergement d'une Application 'Hello World'

Pour vérifier que tout fonctionne correctement, essayons d'héberger une application Node.js de démonstration, telle qu'une application "Hello, World". Vous pouvez en télécharger une ici. Copier/coller manuellement le contenu du fichier app.js est une option, mais je vous suggère d'essayer une autre extension de Plesk à la place, à savoir l'extension Git.

Tout d'abord, vous devez créer un abonnement (un domaine avec un hébergement). Ensuite, vous devez créer un répertoire cible où l'application sera stockée. Sélectionnez votre abonnement, accédez à l'onglet "Fichiers" et créez un répertoire nommé "hello-world". Ensuite, allez dans l'onglet "Domaines", choisissez le site web et cliquez sur le bouton "Git".

Configuration du Répertoire Local

Maintenant, vous allez apprendre à configurer un répertoire local en tant que miroir d'un répertoire distant, et déployer le code vers le répertoire précédemment créé. Définissez cette URL comme URL du répertoire Git distant, et modifiez la cible pour le répertoire "hello-world". Les paramètres devraient ressembler à ceci :

NodeJS PLESK

Différences entre le "Document Root" et le "Application Root"

La prochaine étape consiste à modifier le "Document Root" pour le domaine. Notez que je vais parler du "Document Root" et de l'"Application Root" : ce ne sont pas la même chose. Lorsque nous parlons d'applications web (par exemple, des applications basées sur Node.js ou similaires), le "Document Root" est l'emplacement où l'on trouve les fichiers statiques. En revanche, l'"Application Root" est le répertoire racine où se trouve l'application elle-même. Dans la plupart des cas, le "Document Root" est un répertoire à l'intérieur du répertoire "Application Root" (par exemple, "public").

Vous devez maintenant modifier le "Document Root". Pour ce faire, allez dans "Domaines", sélectionnez votre site web et accédez aux "Paramètres d'hébergement" :

NodeJS PLESK

Modifiez le "Document Root" existant pour qu'il soit 'hello-world/public' (sans guillemets) et cliquez sur le bouton 'OK' pour enregistrer les modifications.

NodeJS PLESK

Activer le Support Node.js

La dernière étape à suivre avant de lancer l'application consiste à activer le support Node.js pour le domaine. Allez dans "Domaines", choisissez le site web et cliquez sur "Node.js". Vous y trouverez des informations sur votre application ainsi qu'une rangée de boutons en haut. Cliquez sur "Activer Node.js", et en quelques secondes, votre écran ressemblera à ceci :

NodeJS PLESK

Tout d'abord, cliquons sur le lien "URL de l'application" pour nous assurer que l'application fonctionne. Si vous voyez un message "Hello, World!", félicitations ! Votre application Node.js est en cours d'exécution.

Application avec des dépendances

Les applications Node.js du monde réel ont toujours des dépendances externes définies dans le fichier package.json et installées dans le répertoire node_modules.

Jetons un coup d'œil à une application basée sur Express ; vous pouvez la télécharger à partir du dJetons un coup d'œil à une application basée sur Express ; vous pouvez la télécharger à partir du dépôt ici. Soit répétez les étapes ci-dessus pour configurer un dépôt dans Plesk, soit téléchargez et chargez le code source manuellement. Une fois que vous avez terminé, l'écran des paramètres Node.js devrait ressembler à ceci - en supposant que vous ayez téléchargé le code dans le répertoire "express-demo".épôt ici. Soit répétez les étapes ci-dessus pour configurer un dépôt dans Plesk, soit téléchargez et chargez le code source manuellement. Une fois que vous avez terminé, l'écran des paramètres Node.js devrait ressembler à ceci - en supposant que vous ayez téléchargé le code dans le répertoire "express-demo".

NodeJS PLESK

Installation des dépendances

Avant d'essayer d'accéder à l'application, vous devez d'abord l'initialiser. Commençons par l'installation des dépendances - heureusement, dans Plesk, c'est aussi simple que de cliquer sur le bouton "Installer NPM". Cela installera toutes les dépendances de l'application conformément au fichier package.json.

Remarque : vous pouvez également utiliser le gestionnaire de paquets Yarn. L'extension tentera de déterminer le gestionnaire de paquets dont vous avez besoin en fonction des fichiers de l'application. Ou vous pouvez le spécifier explicitement dans l'interface de l'extension.

Ensuite, vous devez ajuster le fichier de démarrage de l'application. Plesk utilise le serveur d'applications Phusion Passenger pour servir les applications Node.js. Notre dépôt d'application de démonstration contient un fichier nommé "server.js". Ce fichier ne fait pas partie d'une application basée sur Express typique et ne contient que quelques lignes de code, mais il est néanmoins nécessaire pour que l'application fonctionne :

              
const app = require('./app');
const http = require('http');

http.createServer(app).listen(process.env.PORT);
              
            

Vous pouvez utiliser l'idée derrière ce fichier lors de l'hébergement d'autres applications Node.js (par exemple, basées sur un framework différent). La dernière chose à faire est de modifier le paramètre "Fichier de démarrage de l'application" pour qu'il soit "server.js".

NodeJS PLESK

Maintenant, essayez de parcourir le domaine sur lequel vous avez installé l'application - vous devriez voir le message de bienvenue d'Express.

Par défaut, l'application fonctionne en mode "production". Si vous modifiez l'application, n'oubliez pas de la redémarrer en cliquant sur le bouton "Redémarrer".

Savoir comment déboguer les applications Node.js en cas de problème est essentiel pour un développeur Node.js. Voici quelques conseils qui peuvent vous éviter beaucoup de soucis :

Consultation des journaux de l'application hébergée

La première chose à faire lorsque vous dépannez une application Node.js est de vérifier les fichiers journaux. Pour trouver les enregistrements de journal, y compris la sortie de la console pour votre application, ouvrez le "Navigateur de journaux" pour votre site web. Vous pouvez cibler les enregistrements répertoriés en utilisant le menu déroulant situé à droite.

NodeJS PLESK

Timeout sur le visualisateur de journal

Dans certains cas le visualisateur de journaux part en timeout, ceci est du à un bug avec les logs de passenger qui ne sont pas correctement gérés par Plesk. Pour résoudre ce problème, il faut modifier le fichier de configuration de plesk qui se trouve à l'adresse

              
/opt/psa/admin/conf/panel.ini
              
            
et d'ajouter les lignes suivantes à la fin du fichier :
              
[ext-nodejs]
showApplicationLogs = false
              
            

Afficher les messages d'erreur dans le navigateur

Lors du développement d'une application, il est très pratique de voir les messages d'erreur directement sur le site - ils sont toujours enregistrés. Accédez à l'écran des paramètres de l'application Node.js et changez le mode d'application en "développement". La prochaine fois qu'un problème surviendra, l'erreur s'affichera dans la fenêtre du navigateur. Comme ceci :

NodeJS PLESK

Node.js et Windows

Le support de Node.js est disponible à la fois dans Plesk pour Linux et Plesk pour Windows. Cependant, l'hébergement d'applications Node.js sur Windows présente quelques particularités que vous devez prendre en compte.

Tout d'abord, le support de Node.js dans Plesk Obsidian est mis en œuvre avec l'aide du module iisnode (si vous souhaitez en savoir plus sur le projet iisnode, vous pouvez consulter la documentation ici). Deuxièmement, tandis que dans Plesk pour Linux, vous pouvez sélectionner une version différente de Node.js pour chaque domaine, dans Plesk pour Windows, une seule version de Node.js est utilisée à l'échelle du serveur - vous pouvez sélectionner la version de Node.js lors de l'installation.

Test du support de Node.js

Une autre différence concerne l'emplacement du point d'entrée principal. Dans Plesk pour Linux, il doit être situé dans le répertoire parent du "Document root" du domaine. Dans Plesk pour Windows, il doit être placé directement dans le répertoire "Document root".

Pour tester le support de Node.js, utilisons l'application de démonstration basée sur Express à partir d'ici. Créez un répertoire appelé "node-express" sur votre domaine en utilisant l'accès FTP ou le Gestionnaire de fichiers intégré. Ensuite, déployez le contenu du dépôt GitHub "node-express". Après cela, cliquez sur le lien "Paramètres d'hébergement" (dans Domaines -> Nom du site Web) et définissez le répertoire "Document root" du domaine sur "node-express".

Ensuite, allez dans les paramètres de l'application Node.js et changez le "Fichier de démarrage de l'application" en "server.js". Enfin, installez les dépendances à l'aide du bouton "Installer NPM". Une fois que les dépendances sont installées, vous pouvez parcourir votre site pour vous assurer que l'application fonctionne. Il peut être nécessaire d'ajuster quelques règles de réécriture supplémentaires, mais comme vous pouvez le constater, il est possible de lancer une application Node.js même sur un hébergement Windows.

NodeJS PLESK

Ensuite, allez dans les paramètres de l'application Node.js et changez le "Fichier de démarrage de l'application" en "server.js". Enfin, installez les dépendances à l'aide du bouton "Installer NPM". Une fois que les dépendances sont installées, vous pouvez parcourir votre site pour vous assurer que l'application fonctionne. Il peut être nécessaire d'ajuster quelques règles de réécriture supplémentaires, mais comme vous pouvez le constater, il est possible de lancer une application Node.js même sur un hébergement Windows.

Bénéficiez d'une infogérance PLESK chez 3gk software

N'hésitez pas à nous contacter pour toute demande de devis ou d'informations complémentaires.

Article traduit de l'anglais et complété par Laurent Lefèvre.
Article d'origine : Lien