NodeJS

Aus Hostsharing Wiki
Version vom 15. April 2023, 20:35 Uhr von Tim00 (Diskussion | Beiträge) (Link auf nodejs releases)
Zur Navigation springen Zur Suche springen

Eigene NodeJS Installation

Die JavaScript-Umgebung NodeJS für das Ausführen von JavaScript auf dem Server unterliegt noch einer rasanten Entwicklung. Daher ist die Debian-Version, die bei Hostsharing vorinstalliert ist, oft zu alt für aktuelle Software.

Ein kurze Anleitung für die eigene NodeJS-Installation für einen User.

Installation von nvm

Heute ist die Version v0.39.3 aktuell, siehe auch https://github.com/creationix/nvm/releases

   $ touch ~/.profile
   $ chmod u+x ~/.profile
   $ cd /tmp
   $ wget https://raw.githubusercontent.com/creationix/nvm/v0.39.3/install.sh
   $ chmod u+x install.sh 
   $ ./install.sh 

An dieser Stelle ab- und wieder anmelden oder die Befehle ausführen:

   $ export NVM_DIR="/home/pacs/xyz00/users/example/.nvm"
   $ [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

Bitte auf die bei der Installation ausgegebenen Zeilen am Ende achten, denn neuere nvm-Versionen benötigen ggf. etwas andere Schritte zur sofortigen Aktivierung.

Installation von NodeJS

   $ nvm install 14
   $ nvm alias default 14

installiert (zum Beispiel) sehr einfach NodeJS in der Version 14.x.

analog für die Version 16.x:

   $ nvm install 16
   $ nvm alias default 16

Aktuelle Versionen und LTS Versionen sind hier zu finden: https://nodejs.org/en/download/releases

Überprüfung der Installation

Der Befehl

   $ node -v

gibt die Version des aktiven NodeJS aus.

NodeJS Web-Applikation

Zur Integration der eigenen NodeJS-Installation in den Apache erfolgt über das Apache-Modul "Passenger". Vor der Nutzung dieses Moduls bitte unbedingt die Hinweise zur Nutzung beachten.

Den Pfad zum node-Binärprogramm konfiguriert man in einer ".htaccess"-Datei im Verzeichnis der Domain "/home/pacs/xyz00/users/example/doms/example.com/.htaccess":

 PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v16.14.2/bin/node

(Versionsnummer, User und Paket im Pfad anpassen)

Für's Debugging ist die zusätzlich Option

 PassengerFriendlyErrorPages On

hilfreich.

Zum Testen kann man eine "app.js" ins Verzeichnis "/home/pacs/xyz00/users/example/doms/example.com/app-ssl/" ablegen.

Eine minimale "app.js" zur Anzeige der NodeJS Version:

   var http = require("http");
   http.createServer(function (request, response) {
      response.writeHead(200, {'Content-Type': 'text/plain'});
      response.write('node version ' + process.version + '\n');
      response.end();
   }).listen(3000);

Um diese App zu deaktivieren, muss die Datei gelöscht werden. Es reicht nicht aus, eine etwaige Konfiguration aus der .htaccess zu entfernen.

Weitere Installationen

Mit dem "Node Package Manager" npm läßt sich weitere Software in die Node-Umgebung installieren:

   $ npm install -g gulp