NodeJS: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
(→‎Binärinstallation: Fehlermeldung"libstdc++.so.6: cannot open shared object file" hinzugefügt, auch für die Suche)
 
(24 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 8: Zeile 8:
=== Installation von nvm ===
=== Installation von nvm ===


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


    $ touch ~/.profile
<syntaxhighlight lang="shell">
    $ chmod u+x ~/.profile
touch ~/.profile
    $ cd /tmp
chmod u+x ~/.profile
    $ wget https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh
cd /tmp
    $ chmod u+x install.sh  
wget https://raw.githubusercontent.com/creationix/nvm/v0.40.1/install.sh
    $ ./install.sh  
chmod u+x install.sh  
./install.sh  
</syntaxhighlight>


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


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


Bitte auf die bei der Installation ausgegebenen Zeilen am Ende achten,  
Bitte auf die bei der Installation ausgegebenen Zeilen am Ende achten,  
Zeile 27: Zeile 31:
=== Installation von NodeJS ===
=== Installation von NodeJS ===


Zunächst prüfen, ob ein 32bit oder 64bit Linux auf dem jeweiligen Hostsharing-Host installiert ist:
<syntaxhighlight lang="shell">
nvm install 18
nvm alias default 18
</syntaxhighlight>


    dpkg --print-architecture
installiert (zum Beispiel) sehr einfach NodeJS in der Version 18.x.


==== Binärinstallation ====
analog für die Version 20.x:


Diese Variante funktioniert  bei Hostsharing nur auf amd64 Systemen (64bit Linux auf 64bit CPU).
<syntaxhighlight lang="shell">
nvm install 20
nvm alias default 20
</syntaxhighlight>


    $ nvm install 4
Aktuelle Versionen und LTS Versionen sind hier zu finden: https://nodejs.org/en/download/releases
    $ nvm alias default 4
 
installiert (zum Beispiel) sehr einfach NodeJS in der Version 4.8.6 (27.11.2017).
 
analog für die Version 6.x:
 
    $ nvm install 6
    $ nvm alias default 6
 
Hinweis: Auf i386 Systemen würde von nvn immer ein 64bit Node installiert werden,
das führt dann zu der Fehlermeldung: "libstdc++.so.6: cannot open shared object file".
 
==== Soucecode-basierte Installation auf einem 32bit Linux ====
 
Diese Variante funktioniert sowohl auf amd64 als auch auf i386 Systemen (32bit Linux auf 64bit CPU).
 
    $ nvm install -s 8.9.1 --dest-cpu=ia32
    $ nvm alias default 8.9.1
 
Die Sourcecode-basierte Installation benötigt temporär sehr viel Speicherplatz und bis zu 1 Stunde für Downloads und Kompilation.
Der Speicherplatz kann nach Fertigstellung wieder freigegeben werden, z.B.:
 
    $ rm -r ~/.node  ~/.nvm/.cache/src/node-v8.9.1


==== Überprüfung der Installation ====
==== Überprüfung der Installation ====
Zeile 64: Zeile 51:
Der Befehl
Der Befehl


    $ node -v
<syntaxhighlight lang="shell">
node -v
</syntaxhighlight>


gibt die Version des aktiven NodeJS aus.
gibt die Version des aktiven NodeJS aus.
Zeile 77: Zeile 66:
Verzeichnis der Domain "/home/pacs/xyz00/users/example/doms/example.com/.htaccess":
Verzeichnis der Domain "/home/pacs/xyz00/users/example/doms/example.com/.htaccess":


    PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v4.8.6/bin/node
<syntaxhighlight lang="apache" line>
PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v16.14.2/bin/node
</syntaxhighlight>
 
(Versionsnummer, User und Paket im Pfad anpassen)
 
Für's Debugging ist die zusätzlich Option


bzw.
<syntaxhighlight lang="apache" line>
PassengerFriendlyErrorPages On
</syntaxhighlight>


    PassengerNodejs /home/pacs/xyz00/users/example/.nvm/versions/node/v6.12.0/bin/node
hilfreich.


Zum Testen kann man eine "app.js" ins Verzeichnis "/home/pacs/xyz00/users/example/doms/example.com/app-ssl/"  
Zum Testen kann man eine "app.js" ins Verzeichnis "/home/pacs/xyz00/users/example/doms/example.com/app-ssl/"  
Zeile 88: Zeile 85:
Eine minimale "app.js" zur Anzeige der NodeJS Version:
Eine minimale "app.js" zur Anzeige der NodeJS Version:


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


Um diese App zu deaktivieren, muss die Datei gelöscht werden.
Um diese App zu deaktivieren, muss die Datei gelöscht werden.
Zeile 102: Zeile 101:
Mit dem "Node Package Manager" npm läßt sich weitere Software in die Node-Umgebung installieren:
Mit dem "Node Package Manager" npm läßt sich weitere Software in die Node-Umgebung installieren:


    $ npm install -g gulp
<syntaxhighlight lang="shell">
npm install -g gulp
npm install -g yarn
</syntaxhighlight>


----
----
[[Kategorie:Installationsanleitungen]]
[[Kategorie:Installationsanleitungen]]
[[Kategorie:Software]]
[[Kategorie:Software]]
[[Kategorie:Passenger]]
[[Kategorie:NodeJS]]

Aktuelle Version vom 29. August 2024, 13:56 Uhr

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.40.1 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.40.1/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 18
nvm alias default 18

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

analog für die Version 20.x:

nvm install 20
nvm alias default 20

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
npm install -g yarn