Каков в настоящее время рекомендуемый способ установки node.js в Debian?

10

Я нашел несколько различных методов в Интернете, но некоторые статьи довольно старые, и я обеспокоен тем, что описанные ими методы были заменены.

Может кто-нибудь сказать мне, что в настоящее время рекомендуется, чтобы лучше всего использовать управление пакетами и т. Д.?

UpTheCreek
источник

Ответы:

16

Официальная страница github node.js содержит краткое описание всех дистрибутивов, включая Debian. Они рекомендуют установку из источника:

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

Помните, что установка из исходного кода определенно предоставит вам новейшее программное обеспечение, однако иногда бывает сложнее удалить все файлы, прикрепленные к конкретному проекту. Чтобы избежать этого, используйте checkinstallдля создания быстрого пакета.

Я смог собрать пакет .deb в Ubuntu, следуя приведенному здесь руководству . Это, вероятно, должно работать и для Debian ;-)

TrinitronX
источник
1
Мертвая ссылка :( - раньше был такой web.archive.org/web/20120702211840/http://apptob.org
Magnetic_dud
1
Спасибо, что заметили это! Я изменил ссылку на архивную версию. (довольно забавно, что в настоящее время сайт в этом домене посвящен знакомствам ... "Чтобы создать пакет .deb, просто следуйте этому руководству, чтобы узнать, как ваш партнер обманывает вас" o_0)
TrinitronX
5

Обратите внимание на предупреждение ниже, если вы имеете дело с производственной системой!


Вы можете установить node.js через 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

ВНИМАНИЕ: При этом вам, вероятно, не следует делать этого, поскольку вы устанавливаете программное обеспечение из ветки разработки Debian (Sid). К этому предупреждению особенно следует обращать внимание, если вы имеете дело и с серийной машиной !!!

Mughil
источник
5
Следует сказать, что смешивание репозиториев разных версий Debian может привести к проблемам, с которыми пользователь должен быть готов столкнуться.
энзотиб
смешивание репозиториев не приводит к огромным проблемам, но содержит некоторые проблемы совместимости версий
Mughil
Хорошо, спасибо - это будет установка из нестабильного выпуска, верно? Разве это не проблема?
UpTheCreek
3
Это очень плохая идея. В следующий раз, когда вы обновите свою систему, все будет обновлено до sid. sid нестабилен, не подходит для работы и подходит только для экспертов Debian. Сид много ломается. Я бы понизил это десять раз, если бы мог.
Сэм Уоткинс
2

Вы можете избежать смешивания версий Debian (рецепт боли!), Создав собственные .debs

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

Вы можете создавать файлы .deb для произвольных версий файла node.js, поэтому вы можете легко установить / обновить / удалить его. Это немного быстро и грязно, но, по крайней мере, до тех пор, пока официальные пакеты Debian не станут стабильными.

ОМП
источник
Этот пакет установить npmтоже. Кстати, это чистое решение
b1_
2

Node.js доступен в официальном репо для Debian Sid и Jessie.

sudo apt-get install nodejs

Если его нет в вашем главном хранилище (команда не работает), я бы порекомендовал сборку из исходного кода следующим образом:

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_*

Удаление:

sudo dpkg -r node

В случае, если вы получили разрешение на выполнение nodeисполняемого файла, альтернативный путь может быть:

umask 0022
./configure
make
checkinstall -D --umask 0022 --reset-uids --install=no
dpkg -i node_*.deb
PMint
источник
1

Чтобы получить последний стабильный узел, вы можете установить его из менеджера пакетов, а затем обновить его, используя npm:

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

Это самый простой способ получить последнюю версию, не затрачивая слишком много усилий.

Нафтули Кей
источник
Я обнаружил, что npm и т. Д. Будут повреждены после выполнения 'npm update -g', поскольку они будут содержать "#! / Usr / bin / env node", а не "#! / Usr / bin / env nodejs" (Debian Jessie) , Я думаю, что вам лучше всего устанавливать из исходного кода, особенно если вы собираетесь разрешить npm обновлять себя глобально (что забирает вещи в / usr / local /)
Дэвид Гудвин
0

Видимо, я нашел решение для этого. Если вы столкнулись с проблемами , как этого Не используйте скрипт nodesource для установки nodejs на Debian. Скрипт от nodeource должен нормально работать на хост-системах, но, по моему опыту, он влияет на контейнеры LXC / Docker.

выполните следующие действия вручную, чтобы установить нужную версию nodejs

Для вашей конкретной версии Debian / Ubuntu добавьте соответствующую строку в название выпуска файла sources.list, которое будет кодовым названием вашей версии Debian / Ubuntu.

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

добавить ключ хранилища

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

а затем сделать

apt update и

apt install nodejs Дайте мне знать, если это было полезно для вас. Спасибо

Раджу Девидас
источник