Node.js это платформа для разработки приложений на языке JavaScript, позволяющая быстро создавать приложения, работающие в сети. Использование JavaScript одновременно на клиентской и на серверной стороне позволяет сделать разработку более унифицированной и спроектированной в рамках единой системы.
В этом руководстве мы покажем вам, как начать использовать Node.js на сервере с Ubuntu 16.04.
Если вы ищите инструкции по установке Node.js в production среде, рекомендуем ознакомиться с этой ссылкой: Как настроить приложение Node.js в production среде.
Инструкции в этой статье предполагают, что у вы используете Ubuntu 16.04. Перед началом убедитесь, что у вас есть не-рутовый пользователь с привилегиями sudo
. Настроить такого пользователя вы можете с помощью инструкций в статье “Начальная настройка сервера на Ubuntu 16.04”.
В стандартных репозиториях Ubuntu 16.04 есть версия Node.js, которую удобно использовать для обеспечения однородной среды выполнения сетевых приложений сразу на нескольких серверах. На момент написания этой статьи текущая версия в репозиториях - v4.2.6. Это не самая последняя версия, но она довольно стабильна и её будет достаточно для экспериментов с языком.
Для установки этой версии воспользуемся пакетным менеджером apt
. Сначала обновим локальный индекс пакетов, а затем установим дистрибутив из репозиториев:
- sudo apt-get update
- sudo apt-get install nodejs
Если пакет из репозиториев удовлетворяет вашим потребностям, то на этом установка Node.js закончена. Однако чаще всего вам также потребуется установить npm
- менеджер пакетов для Node.js. Это можно сделать при помощи следующей команды:
- sudo apt-get install npm
Это позволит вам легко устанавливать модули и пакеты для Node.js.
Из-за конфликта с другим пакетом, исполняемый файл из репозиториев Ubuntu называется nodejs
вместо node
. При работе имейте это ввиду.
Далее мы обсудим более гибкие методы установки.
Альтернативный способ, при помощи которого можно установить более свежую версию Node.js, - это использование PPA (персональный архив пакетов), который поддерживается компанией NodeSource. В архиве содержатся более новые версии Node.js, чем в официальных репозиториях Ubuntu. Используя архив вы также сможете выбирать между Node.js v4.x (более ранняя версия с долгосрочной поддержкой до апреля 2017), v6.x (более современная версия с долгосрочной поддержкой до апреля 2018) и Node.js v7.x (текущая разрабатываемая версия).
Прежде всего, вам необходимо установить сам PPA для получения доступа к его содержимому. Убедитесь, что вы находитесь в своей домашней директории, используйте curl
для получения установочного скрипта для необходимой вам версии, заменив 6.x
на необходимую вам версию:
- cd ~
- curl -sL https://deb.nodesource.com/setup_6.x -o nodesource_setup.sh
Вы можете просмотреть содержимое скрипта с помощью nano
(или любого другого текстового редактора):
- nano nodesource_setup.sh
Запустите скрипт с правами sudo
:
- sudo bash nodesource_setup.sh
PPA будет включен в конфигурацию и ваш локальный кэш пакетов обновится автоматически. После выполнения установочного скрипта из nodesource, вы можете установить Node.js так же, как описано ранее:
- sudo apt-get install nodejs
Пакет nodejs
содержит и nodejs
и npm
, поэтому нет никакой необходимости в дополнительной установке npm
. Однако для работы некоторых пакетов из npm
(например таких, которые требуют компиляцию из исходников), вам потребуется установить пакет build-essentials
:
- sudo apt-get install build-essential
Альтернативой установке Node.js через apt
является использование специального инструмента nvm
, что расшифровывается как “Node.js version manager” (менеджер версий Node.js).
Используя nvm
, вы можете установить несколько отдельных (изолированных) версий Node.js, что позволит вам проще контролировать вашу среду разработки. Это даст вам доступ в новым версиям Node.js в случае необходимости, но при этом позволит собирать приложения для предыдущих релизов Node.js, которые ваше приложение может использовать в виде зависимостей.
Для начала, нам необходимо установить пакеты из репозиториев Ubuntu, которые позволят собирать пакеты из исходников. NVM будет использовать это для сборки необходимых компонентов:
- sudo apt-get update
- sudo apt-get install build-essential libssl-dev
После установки требуемых пакетов, можно загрузить установочный скрипт nvm со страницы проекта на GitHub. Номер версии может отличаться, но в целом, для загрузки и установки можно использовать следующую команду curl
:
- curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh -o install_nvm.sh
Просмотреть установочный скрипт можно используя nano
:
- nano install_nvm.sh
Запустите скрипт:
- bash install_nvm.sh
Эта команда установит ПО в вашу домашнюю директорию в папку ~/.nvm
. Также в файл ~/.profile
будут добавлены некоторые необходимые для работы настройки.
Для получения доступа к функционалу nvm, вам необходимо перелогиниться в системе, либо вы можете использовать команду source
для того, чтобы применить изменения не прерывая текущую сессию:
- source ~/.profile
Теперь, когда nvm установлен, вы можете устанавливать изолированные версии Node.js.
Чтобы узнать, какие версии Node.js доступны для установки, наберите:
- nvm ls-remote
Вывод...
v5.8.0
v5.9.0
v5.9.1
v5.10.0
v5.10.1
v5.11.0
v6.0.0
Как вы можете видеть, новейшей версией на момент написания руководства является v6.0.0. Установить ее можно при помощи следующей команды:
- nvm install 6.0.0
Обычно nvm переключается на использование последней установленной версии. Вы можете указать nvm использовать только что загруженную версию в явном виде следующим образом:
- nvm use 6.0.0
Если вы устанавливаете Node.js через nvm, исполняемый файл будет иметь имя node
. Посмотреть, какую версию в данный момент использует shell, можно при помощи команды:
- node -v
Выводv6.0.0
Если у вас установлено несколько версий Node.js, посмотреть их список можно с помощью команды:
- nvm ls
Если вы хотите настроить одну из версий как версию по умолчанию, введите:
- nvm alias default 6.0.0
Эта версия будет автоматически выбираться при начале новой сессии. Вы также можете ссылаться на нее по псевдониму (алиасу) следующим образом:
- nvm use default
Каждая версия Node.js имеет свои собственные пакеты, управлять которыми можно при помощи npm
.
npm
может устанавливать пакеты в директорию ./node_modules
проектов Node.js при использовании обычного формата. Например, для модуля express
это можно сделать вот так:
- npm install express
Если вы хотите установить пакет глобально (чтобы он был доступен для других проектов, использующих ту же версию Node.js), следует добавить флаг -g
:
- npm install -g express
Эта команда установит пакет в директорию:
- ~/.nvm/node_version/lib/node_modules/package_name
Глобальная установка позволит вам запускать команды из командной строки, но при этом вам придется использовать ссылку на пакет внутри вашего проекта следующим образом:
- npm link express
Узнать больше о доступных опциях можно при помощи следующей команды:
- nvm help
Как вы видите, существует несколько способов установки Node.js на сервер с Ubuntu 16.04. Какой из этих способов подходит вам больше - решать вам. В то время, как установка из репозиториев Ubuntu - это наиболее простой метод, использование для установки nvm
является куда более гибким.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!