Jaki jest obecnie zalecany sposób instalacji node.js na Debianie?


10

Znalazłem kilka różnych metod w Internecie, ale niektóre artykuły są dość stare i martwię się, że metody, które opisują, zostały zastąpione.

Czy ktoś może mi powiedzieć, jaka jest obecnie zalecana metoda najlepszego wykorzystania zarządzania pakietami itp.?

Odpowiedzi:


16

Oficjalna strona github node.js ma podsumowanie wszystkich dystrybucji, w tym Debiana. Zalecają instalację ze źródła:

apt-get install python g++ wget libssl-dev
mkdir /tmp/nodejs && cd /tmp/nodejs
wget http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd node-v*
./configure
make
make test
make install

Pamiętaj, że instalacja ze źródła na pewno zapewni ci najnowsze oprogramowanie, jednak czasami trudniej jest odinstalować wszystkie pliki dołączone do konkretnego projektu. Aby tego uniknąć, użyj, checkinstallaby zbudować sobie szybki pakiet.

Udało mi się zbudować pakiet .deb na Ubuntu, postępując zgodnie z przewodnikiem tutaj . Prawdopodobnie powinno to również działać dla Debiana ;-)



1
Dzięki, że to zauważyłeś! Zmieniłem link do zarchiwizowanej wersji. (trochę zabawne, że strona obecnie w tej domenie dotyczy randek ... „Aby zbudować pakiet .deb, po prostu postępuj zgodnie z tym przewodnikiem, aby dowiedzieć się, czy twój partner cię zdradza” o_0)
TrinitronX

5

Jeśli masz do czynienia z systemem produkcyjnym, zapoznaj się z poniższym ostrzeżeniem!


Możesz zainstalować node.js poprzez apt-get.

# echo deb http://ftp.us.debian.org/debian/ sid main \
    > /etc/apt/sources.list.d/sid.list
# apt-get update
# apt-get install nodejs

OSTRZEŻENIE: Biorąc to pod uwagę, prawdopodobnie nie powinieneś tego robić, ponieważ instalujesz oprogramowanie z działu rozwoju Debiana (Sid). To ostrzeżenie należy szczególnie uwzględnić, jeśli masz do czynienia z maszyną produkcyjną !!!


5
Należy powiedzieć, że mieszanie repozytoriów różnych wersji Debiana może prowadzić do problemów, na które użytkownik powinien być gotowy.
enzotib

mieszanie repozytoriów nie prowadzi do ogromnego problemu, ale zawiera pewne problemy ze zgodnością wersji
Mughil

Ok, dziękuję - zainstaluje się z wersji niestabilnej, prawda? Czy to nie jest problem?
UpTheCreek

3
To bardzo zły pomysł. Przy następnej aktualizacji systemu wszystko zostanie zaktualizowane do wersji sid. sid jest niestabilny, nie nadaje się do produkcji i jest odpowiedni tylko dla ekspertów Debiana. Sid bardzo się psuje. Głosowałbym za tym dziesięć razy, gdybym mógł.
Sam Watkins

2

Możesz uniknąć mieszania wersji Debiana (przepis na ból!), Budując własne .deb

https://github.com/mark-webster/node-debian

Możesz budować pliki .deb dla dowolnych wersji node.js, dzięki czemu możesz łatwo zainstalować / uaktualnić / odinstalować. Jest to trochę szybkie i brudne, ale przynajmniej coś, dopóki oficjalne pakiety Debiana nie pojawią się w stabilnym.


Ten pakiet npmrównież się instaluje . W każdym razie jest to czyste rozwiązanie
b1_

2

Node.js jest dostępny w oficjalnym repozytorium dla Debiana Sid i Jessie.

sudo apt-get install nodejs

Jeśli nie masz go w głównym repozytorium (polecenie nie działało), polecam budowanie ze źródła w ten sposób:

sudo apt-get install python g++ make checkinstall
mkdir ~/src && cd $_
wget -N http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd node-v*
./configure
checkinstall   #remove the "v" in front of the version number in the dialog!
sudo dpkg -i node_*

Odinstaluj:

sudo dpkg -r node

W przypadku odmowy nodedostępu do pliku wykonywalnego alternatywną ścieżką może być:

umask 0022
./configure
make
checkinstall -D --umask 0022 --reset-uids --install=no
dpkg -i node_*.deb

1

Aby uzyskać najnowszy stabilny węzeł, możesz go zainstalować z menedżera pakietów, a następnie zaktualizować go za pomocą npm:

sudo apt-get install nodejs npm 
sudo npm update -g

Jest to najprostszy sposób na uzyskanie najnowszej wersji bez nadmiernego wysiłku.


Odkryłem, że npm etc zostanie zepsuty po wykonaniu aktualizacji npm -g, ponieważ będą zawierać „#! / Usr / bin / env node” zamiast „#! / Usr / bin / env nodejs” (Debian Jessie) . Myślę, że najlepiej jest instalować ze źródła, zwłaszcza jeśli pozwolisz npm na globalną aktualizację (która wrzuca rzeczy do / usr / local /)
David Goodwin

0

Najwyraźniej znalazłem rozwiązanie tego problemu. Jeśli masz problemy takie jak ten nie korzystać z skrypt nodesource zainstalować nodejs na Debianie. Skrypt z węzła źródłowego powinien działać dobrze na systemach hosta, ale z mojego doświadczenia wpływa na kontenery LXC / Docker.

wykonaj następujące czynności ręcznie, aby zainstalować żądaną zainstalowaną wersję nodejs

Dla konkretnej wersji Debian / Ubuntu dodaj odpowiedni wiersz do swojej wersji pliku sources.list nazwa wydania będzie kodową dla twojej wersji Debian / Ubuntu

deb https://deb.nodesource.com/node_8.x/ <release name> main

dodaj klucz repozytorium

curl --silent https://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add -

a następnie zrobić

apt update i

apt install nodejs Daj mi znać, jeśli ci to pomogło. Dzięki

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.