NEWS
[HowTo] Nodejs versionsverwaltung unter Linux/MacOS
-
Hallo zusammen,
da die Aktualisierung von Nodejs immer etwas Tricky ist, habe ich mir beim letzten mal eine andere möglichkeit gesucht bzw. bin darüber gestolpert.
Die Lösung heisst "nvm = Node version manager", derzeit nur für Linux und Mac OS verfügbar.
Mit nvm ist es Kinderleicht nodejs Versionen zu installieren und zu wechseln. Darüber hinaus bietet es auch die Möglichkeit Nodejs apps mit unterschiedlichen Nodejs Versionen aus zu führen.
Getestet hab ich das unter Ubuntu Server
<size size="150">Wichtig:</size> * Es dürfen keine alten Nodejs Versionen installiert sein. Also vorher Nodejs deinstallieren.
****Vor**** dem Wechsel der Nodejs Version ****muss ioBroker gestoppt**** werden.
<u><size size="150">Installation</size></u>
Folgende Befehle laden das Installationsskript herunter und führen es direkt aus
mit curl
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
oder mit wget
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
Nach der installation sollte bei der Eingabe von
nvm --version
die Version von nvm ausgegeben werden, wenn````
nvm: command not found****<size size="150"><u>Verwendung</u></size>**** Die aktuelle LTS Nodejs Version installiert man mit dem Befehl
nvm install --lts
mit
nvm use --lts
sagt man nvm das die aktuelleste LTS Nodejs Version verwendet werden soll, dieser Befehl muss nach der Installation von Nodejs eingegeben werden. Eine bestimmte Nodejs Version kann man mit
nvm install v0.10.32
installieren und mit
nvm use v0.10.32
benutzen. Die aktuell verwendete Nodejs Version zeigt der Befehl
nvm current
****<size size="150">Anmerkung:</size>**** Bei mir funktioniert ioBroker nur wenn "nodejs" auf die aktuelle "node" Version verweisst. Das heisst Konkret der Befehl```` nodejs -v ````muss die von mir gewünschte Version ausgeben. Wenn das nicht der Fall ist muss man mit```` which node ````den richtigen Pfad herausfinden und mit```` sudo ln -s -f /home/jey-cee/.nvm/versions/node/v6.11.2/bin/node /usr/bin/nodejs ````den Symlink von "nodejs" auf die Aktuelle node Version ändern. [https://github.com/creationix/nvm](https://github.com/creationix/nvm) gehts zur nvm Github seite.
-
@jey-cee Kann man aktuell noch von einer normalen version auf nvm wechseln?
Habs eben versucht, aber die iobroker installation findet keine node installation. Ich nehme an, da ich mit einem anderen Benutzer in der Shell bin und nvm im user verzeichnis installiert wird.
In den iobroker nutzer kann ich mich nicht einloggen und wenn ich commands mit sudo als iobroker ausführe, bekomme ich zwar nvm im iobroker home installiert, aber die Befehler für nvm funktionieren nicht. -
@cruzix sagte in [HowTo] Nodejs versionsverwaltung unter Linux/MacOS:
Kann man aktuell noch von einer normalen version auf nvm wechseln?
der Thread ist von 2017!
inzwischen hat sich einiges an der Front getan.
warum nvm?
-
@cruzix Ich nutze nvm schon lange nicht mehr und hab es noch nie versucht seit ioBroker seinen eigenen Benutzer hat.
Es macht eigentlich keinen Sinn mehr nvm zu nutzen. Außer vielleicht zu Entwicklungszwecken. -
@jey-cee Achso, wusste nicht, dass es damals mit den Benutzern anders war.
Finde nvm was das aktualisieren von Versionen usw. geht ganz charmant, daher hatte ich die Idee und diesen Thread gefunden.