Quelle est la différence entre “Setup Node.JS App” et la méthode “.bashrc” ?

  • Setup Node.JS App” : Cet outil sert uniquement à configurer une application Node.JS accessible via le web (comme une API ou un site en Express.js). Il configure automatiquement un environnement et gère l’exécution du serveur web.
  • Méthode “.bashrc” : Elle vous donne un contrôle total sur Node.JS. Vous pouvez exécuter n’importe quel script Node.JS, que ce soit un cron, un outil en ligne de commande ou un script de build. Consultez la FAQ dédiée à ce sujet.

Comment déployer votre appli web Node.JS avec “Setup Node.JS App” ?

Nous vous permettons de déployer une application Node.JS directement sur votre hébergement, sans avoir à vous occuper de superviser votre process node. Techniquement, le déploiement est basé sur Phusion Passenger (vous trouverez en bas de cette page plus d'informations techniques sur le principe de fonctionnement).

Par ailleurs, n'hésitez pas à consulter la liste des questions fréquentes sur Node.JS.

  • Connectez-vous à votre cPanel
  • Dans la section "Logiciels", choisissez "Setup Node.JS App"
  • Cliquez sur " Create Application"
  • Renseignez les informations sur votre application :

    • Create : cliquez ici après avoir rempli le formulaire pour créer votre application
    • Node.js version : choisissez la version de Node.JS à utiliser (s'il vous manque la version de votre choix, pas de panique notre support technique l'installera pour vous)
    • Application mode : choisissez entre le mode de développement et production, cela renseigne la variable d'environnement NODE_ENV.
    • Application root : indiquez le dossier dans lequel se trouve le code de votre application (utilisez de préférence un dossier différent de celui du domaine où vous aller déployer votre application)
    • Application URL : indiquez l'URL où vous désirez déployer votre application, le répertoire après le nom de domaine étant facultatif (cPanel va créer un fichier .htaccess à cet endroit)
    • Application startup file : indiquez le nom du fichier JavaScript qui sert à démarrer votre application, il doit être présent das le dossier Application Root (il s'agit généralement de server.js)
    • Passenger log file : indiquez l'endroit où vous désirez créer le fichier de log (facultatif mais utile pour débugger)
    • Environment variables - Add Variable : ajoutez les variables d'environnement requises par votre application
  • Même si vous pouvez installer les dépendances via cPanel, nous conseillons de le faire en SSH pour mieux voir les erreurs le cas échéant.
  • Pour cela, connectez-vous en SSH, copiez la ligne indiquée en haut de la page de votre application sur cPanel et lancez la une fois connecté en SSH:
  • Vous pouvez ensuite lancer npm install ou yarn install.
  • Si vous avez une erreur "RangeError: WebAssembly.instantiate(): Out of memory: wasm memory", essayez de vous connecter en SSH et non via l'application Terminal de cPanel, car ce dernier n'alloue pas assez de mémoire pour ces commandes.

Comment cela fonctionne techniquement ?

Phusion Passenger fonctionne différemment de ce dont vous pouvez avoir l'habitude (ex : node server.js), et vous n'avez pas eu à indiquer un port d'écoute pour votre application. En fait, Phusion Passenger s'occupe de tout cela de manière transparente, c'est l'outil Setup Node.JS App qui s'occupe de lancer votre application, et la relancer si elle s'arrête soudainement.

Pour cette raison, vous ne devez pas lancer manuellement votre application car elle écouterait sur le port 3000 (par exemple) qui n'est pas accessible de l'extérieur (bloqué par notre firewall).

Phusion Passenger lance votre application, et dès qu'il rencontre l'instruction listen(), il connecte un socket Unix dessus (à la place du port indiqué) et fait le lien avec le serveur web grâce à ce socket Unix. C'est ce qu'on appelle le reverse-port binding.

Cette réponse était-elle pertinente? 1 Utilisateurs l'ont trouvée utile (1 Votes)