Node.js i NPM to coraz cześciej podstawa pracy nad aplikacjami webowymi. Sprawne poruszanie się po wersjach npm i node.js będzie potrzebne jeżeli działamy na różnych frameworkach opartych na node.js. Większość gotowych rozwiązań zazwyczaj trzyma się jednej wersji node.js i to web devloper musi dostosować środowisko pracy czy serwera do wymogów instalacji.
Cent OS7 to wersja open source linuxa oparta o feodora. To jedna z standardowych wersji linux dostępnej na przykład przy wykupieniu usługi VPS albo dedykowanego serwera. Przy budowaniu większych instalacji webbowych lub aplikacji warto zbudować sobie takie środowisko pracy na własnym komputerze w wersji dual boot (windows / linux) lub poprostu postawić sobie domowy serwer oparty o CentOS7.
Komendy poniżej są dostosowane do CentOS7 ale powinny działać także na innych systemach linux.
Instalacja node.js za pomoca nvm
Jednym ze sposobów instalacji i wyboru wersji node.js jest użycie node version manager'a.
Linux
Wszystkie komendy wykonujemy z poziomu root ( sudo -s )
--- Ściągamy NVM ---
$ curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
--- Ustawiamy środowisko aby komendy działaly globalnie ---
root@spaceghost:~# source ~/.profile (Ubuntu)
root@spaceghost:~# source ~/.bashrc (Centos / RHEL )
Windows
Instalujemy program nvm dla windows
Następnie otwieramy command line w windowsie (cmd)
Lista dostępnych wersji
Linux
root@spaceghost:~# nvm ls-remote
--- system powinnien pokazać dostępne wersje ---
v8.1.3
v8.1.4
v8.2.0
v8.2.1
v8.3.0
v8.4.0
v8.5.0
v8.6.0
v8.7.0
v8.8.0
v8.8.1
Windows
c:\ nvm list available
Instalacja wybranych wersji node.js
root@spaceghost:~# nvm install 4.2.5
root@spaceghost:~# nvm install 8.7.0
root@spaceghost:~# nvm install ...
--- Windows --
Dla windowsa możemy dodatkowo określic architekture 32bit lub 64bit.
c:\nvm install 8.4.0 32
c:\nvm install 8.4.0 64
Instalujemy wszytskie potrzebne wersje pod nasze aplikacje.
--- Lista zainstalowanych node.js ---
root@spaceghost:~# nvm list
--- Przykładowy wynik ---
v0.12.18
v4.8.2
v6.9.4
v7.9.0
-> v8.4.0
v8.8.1
system
default -> 8.8.1 (-> v8.8.1)
node -> stable (-> v8.8.1) (default)
stable -> 8.8 (-> v8.8.1) (default)
iojs -> N/A (default)
lts/* -> lts/boron (-> N/A)
lts/argon -> v4.8.5 (-> N/A)
lts/boron -> v6.11.5 (-> N/A)
--- Użyj Wersji node.js ---
root@spaceghost:~# nvm use 8.4.0
--- Rezultat ---
Now using node v8.4.0 (npm v5.3.0)
Jak widać powyżej nvm dopasowuje wersje npm do wersji node.js więc nie musimy się o to martwić. Teraz dowoli możemy sobie poskakać po buildach node.js ale co jak mamy pare aplikacji które korzstają z róznych wersji node ?
Uruchom aplikacje w wybranej wersji node.js
root@spaceghost:~# nvm run 4.8.2 index.js
Dezinstalacja wersji node.js
root@spaceghost:~# nvm remove 4.8.2