L'hébergement Node.js sur votre propre serveur, supervisé par le panneau
Choisissez l'environnement d'exécution Node.js et votre programme devient un site : démarré à l'amorçage, redémarré lorsqu'il s'arrête, avec son domaine, son certificat et ses dépendances pris en charge pour lui.
Ce que le panneau fait pour lui
Les parties de l'hébergement Node.js que personne n'aime.
Maintenu en marche
Démarré quand vous l'appliquez, relancé après un redémarrage de la machine, et redémarré s'il s'arrête : un plantage, une promesse rejetée sans traitement, une interruption pour mémoire épuisée.
Dépendances installées
Installez depuis le panneau et il exécute npm sous le compte propre du site, en se servant de votre fichier de verrouillage lorsqu'il y en a un, pour que les versions installées soient celles que vous avez validées.
Arrêter et redémarrer
Déployer du nouveau code tient à un bouton. Arrêter une application qui se comporte mal pendant que vous en cherchez la cause aussi.
Variables d'environnement
Modifiées sous la forme des lignes qu'elles deviennent, un nom et une valeur par ligne. Vos identifiants de base de données et vos clés d'API vont ici plutôt que dans le dépôt.
Votre certificat, gratuit
Le domaine et son certificat Let's Encrypt appartiennent à nginx. Le renouvellement n'est pas le problème de votre application et ne l'a jamais été.
Surveillé
La surveillance de l'exécution échantillonne l'application une fois par minute et conserve sept jours, si bien que « c'était lent mardi dernier » devient une question qui a une réponse.
La règle unique
Écoutez sur le port qu'on vous donne.
Votre application doit écouter sur le port que le panneau lui attribue, en bouclage. Une application figée sur le port 3000 ne sera pas joignable. Lisez le port depuis l'environnement, ce que tous les guides de déploiement vous disent déjà de faire, et le même code fonctionne ici comme partout ailleurs.
En échange, rien de ce qui touche aux certificats, aux hôtes virtuels ou aux ports du pare feu ne vous concerne. Les WebSockets fonctionnent : la mise à niveau est transmise et la connexion maintenue ouverte, si bien qu'une application qui met à niveau une requête se comporte comme elle le ferait n'importe où.
Node.js 20, 22 et 24 sont les versions qu'un serveur peut offrir, et la version se choisit par site plutôt que pour la machine. Deux applications sur un même serveur peuvent exiger des versions majeures différentes.
Ce qu'il peut atteindre
Son propre site, sous son propre compte.
Une application Node.js s'exécute sous le compte Unix propre du site, dans le répertoire du site, exactement comme un site PHP. Elle lit et écrit ses propres fichiers et atteint sa propre base de données. Elle ne peut pas lire les fichiers d'un autre site, et le compte n'a pas d'interpréteur de commandes.
Une base de données se crée comme pour n'importe quel autre site : créez en une avec son propre compte et transmettez les identifiants sous forme de variables d'environnement. Le courriel, le DNS, les tâches planifiées et les sauvegardes fonctionnent tous sur un site Node.js, car aucun d'eux ne se soucie de ce que le site exécute.
S'il vous en faut davantage, à cause d'un langage ou d'une bibliothèque système que ce serveur n'installe pas, un site en conteneur exécute à la place une image qui vous est propre. C'est un autre environnement d'exécution, avec d'autres compromis, et il exige qu'un administrateur approuve d'abord l'image.
En être honnête
Ce que la supervision n'est pas.
Redémarrer un processus qui s'arrête gagne du temps, pas de la justesse. Une application qui plante à chaque requête redémarre à chaque requête, et le site reste hors service. Ce que cela évite, c'est l'autre cas, celui qui se produit vraiment : une seule mauvaise requête à deux heures du matin qui met le site hors d'usage jusqu'à ce que quelqu'un s'en aperçoive au matin.
Et une application Node.js partage la machine avec tous les autres sites qui y sont. L'isolation repose sur le compte Linux et sur les limites du service, soit la même isolation que celle d'un site PHP, décrite en entier. Ce n'est pas une machine virtuelle, et rien sur ce site ne vous dira le contraire.
Vos serveurs, sans que rien de ce qu'ils portent ne soit compté.
Le panneau entier est gratuit sur un serveur, sans limite de sites, de boîtes aux lettres, de zones DNS ou de comptes clients. Pro, jusqu'à cinq serveurs, n'est pas encore disponible.