Установка Node.js при помощи NVM (Node Version Manager)

Node.js – это современная программная платформа для разработки, которая позволяет писать веб-приложения, использующие Javascript и на сервере и на клиенте (что устраняет необходимость знать несколько языков программирования). Кроме того, Node.js очень хорошо справляется с обработкой веб-приложений в режиме реального времени, благодаря чему эта платформа является отличным вариантом для запуска многих современных веб-приложений.

Однако, есть и некоторые недостатки. Дело в том, что все эти полезные новые функции еще совсем новые, они даже немного сыроваты, вследствие чего запустить node.js на сервере не всегда так просто, как, к примеру, WordPress.

Joyent, команда разработчиков Node.js, развивает эту платформу невероятными темпами, каждый месяц появляется сразу несколько версий программы. В основном проводится очень хорошая работа по совместимости: проекты, написанные в одной версии Node, будут должным образом работать в следующем релизе программы. Тем не менее, есть и исключения: определенные приложения будут работать только в одной версии Node.js. В таком случае нужно будет обновить или понизить версию Node.js для того, чтобы использовать такое приложение.

Ранее такой процесс был достаточно сложным, но сообщество Node.js сумело разработать отличное решение, которое позволяет легко управлять всеми установками Node.js  и менять версии платформы при необходимости. Это NVM, или Node Version Manager – менеджер версий Node.

Данное руководство посвящено установке и использованию Node.js.

Установка Node.js на виртуальный выделенный сервер

Процесс установки достаточно сложен. Войдите на сервер и запустите команду:

curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash

На экране появятся некоторые данные, после чего nvm будет установлен. По завершении установки появится строка:

=> Close and reopen your terminal to start using NVM

То есть, нужно закрыть и снова открыть терминал, чтобы получить доступ к NVM. На самом деле, не обязательно выходить из терминала, достаточно убедиться, что изменения, внесенные менеджером nvm в путь, уже отражаются, потому просто наберите:

source ~/.profile

Кроме того, выполните команду, предложенную в выводе скрипта. Теперь введите:

nvm ls-remote

На данном этапе может возникнуть ошибка: -bash: nvm: command not found; возможно, это происходит потому, что git не установлен.

В таком случае нужно установить git и перезапустить скрипт:

apt-get install git

Появится список всех доступных версий Node.js. Чтобы узнать последнюю стабильную версию, посетите сайт Node.js – стабильная версия указана в центре страницы.

Чтобы, например, установить версию 0.10.13 (последнюю стабильную версию на момент написания статьи), введите:

nvm install 0.10.13

Теперь наберите:

node --version

Появится версия текущая версия node (в данном случае v0.10.13).

Если, например, приложение требует более старой версии и работает только с node v0.8.16, нужно ввести:

nvm install v0.8.16

Данная команда установит версию v0.8.16 и переключится на нее.

Чтобы переключиться назад на версию v0.10.13, используйте команду use:

nvm use v0.10.13

Как видите, NVM – легкий и удобный способ переключиться с одной версии на другую. Однако, есть один нюанс. Если ввести:

which node

появится интересный результат. NVM устанавливает Node.js в домашний каталог пользователя. Это очень удобно для разработки. Но при запуске приложение Node можно обнаружить, что последняя версия Node.js, только что установленная через NVM, повредила производство приложения Node и оно перестало работать. Лучше установить одну копию Node.js глобально; это позволит другим пользователям использовать NVM для переключения между версиями разработки.

Дл этого запустите следующую команду (введите пароль пользователя):

n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr/local

Вышеприведенная команда кажется сложной, но она только копирует через nvm активную версию Node.js в каталог /usr/local/ (каталог, предназначенный в linux для глобальных установок пользователя) и устанавливает привилегии на нее таким образом, что все пользователи могут получить к ней доступ.

При необходимости сделать глобальной другую версию Node.js просто снова выполните команду nvm use vXX.XX.XX; указанная версия станет общесистемной. После этого снова запустите предыдущую команду, чтобы скопировать версию в системный каталог.

Чтобы убедиться, что все работает должным образом, перейдите на учетную запись root и выполните команду which, чтобы убедиться, что node установлен в /usr/local/bin:

sudo -s
which node

Должно появиться:

/usr/local/bin/node

Готово! Программная платформа Node.js установлена и готова к работе!

Tags: , , , , ,

Добавить комментарий