Вступление
Node.js - это платформа JavaScript для программирования общего назначения, которая позволяет пользователям быстро создавать сетевые приложения. Используя JavaScript как на передней, так и на внутренней стороне, Node.js делает разработку более последовательной и интегрированной.
В этом руководстве мы покажем вам, как начать работу с Node.js на сервере Ubuntu 18.04.
Предпосылки
В этом руководстве предполагается, что вы используете Ubuntu 18.04. Прежде чем начать, вы должны иметь учетную запись пользователя без полномочий root с привилегиями sudo, настроенными в вашей системе. Вы можете узнать, как это сделать, следуяinitial server setup tutorial for Ubuntu 18.04.
Установка дистрибутивно-стабильной версии для Ubuntu
Ubuntu 18.04 содержит версию Node.js в своих репозиториях по умолчанию, которую можно использовать для обеспечения согласованного взаимодействия в нескольких системах. На момент написания, версия в репозиториях 8.10.0. Это будет не последняя версия, но она должна быть стабильной и достаточной для быстрого экспериментирования с языком.
Чтобы получить эту версию, вы можете использовать менеджер пакетовapt
. Обновите локальный индекс пакета, набрав:
sudo apt update
Установите Node.js из репозиториев:
sudo apt install nodejs
Если пакет в репозиториях соответствует вашим потребностям, это все, что вам нужно сделать, чтобы настроить Node.js. В большинстве случаев вы также захотите установитьnpm
, менеджер пакетов Node.js. Вы можете сделать это, набрав:
sudo apt install npm
Это позволит вам установить модули и пакеты для использования с Node.js.
Из-за конфликта с другим пакетом исполняемый файл из репозиториев Ubuntu называетсяnodejs
вместоnode
. Имейте это в виду, когда вы работаете с программным обеспечением.
Чтобы проверить, какую версию Node.js вы установили после этих начальных шагов, введите:
nodejs -v
После того, как вы определили, какую версию Node.js вы установили из репозиториев Ubuntu, вы можете решить, хотите ли вы работать с различными версиями, архивами пакетов или менеджерами версий. Далее мы обсудим эти элементы, а также более гибкие и надежные методы установки.
Установка с использованием PPA
Чтобы получить более свежую версию Node.js, вы можете добавитьPPA (личный архив пакетов), поддерживаемый NodeSource. Это будет иметь больше современных версий Node.js, чем официальные репозитории Ubuntu, и позволит вам выбирать между Node.js v6.x (поддерживается до апреля 2019 года), Node.js v8.x (текущая версия). Версия LTS, поддерживаемая до декабря 2019 г.), Node.js v10.x (вторая текущая версия LTS, поддерживаемая до апреля 2021 г.) и Node.js v11.x (текущий выпуск, поддерживаемый до июня 2019 г.).
Сначала установите PPA, чтобы получить доступ к его содержимому. Из вашего домашнего каталога используйтеcurl
, чтобы получить сценарий установки для вашей предпочтительной версии, не забудьте заменить10.x
на предпочитаемую строку версии (если она отличается):
cd ~
curl -sL https://deb.nodesource.com/setup_10.x -o nodesource_setup.sh
Вы можете проверить содержимое этого скрипта с помощьюnano
(или вашего предпочтительного текстового редактора):
nano nodesource_setup.sh
Запустите сценарий подsudo
:
sudo bash nodesource_setup.sh
PPA будет добавлен в вашу конфигурацию, и ваш локальный кеш пакетов будет обновлен автоматически. После запуска сценария установки из Nodesource вы можете установить пакет Node.js так же, как вы делали это выше:
sudo apt install nodejs
Чтобы проверить, какую версию Node.js вы установили после этих начальных шагов, введите:
nodejs -v
Outputv10.14.0
Пакетnodejs
содержит двоичный файлnodejs
, а такжеnpm
, поэтому вам не нужно устанавливатьnpm
отдельно.
npm
использует файл конфигурации в вашем домашнем каталоге для отслеживания обновлений. Он будет создан при первом запускеnpm
. Выполните эту команду, чтобы убедиться, чтоnpm
установлен, и создать файл конфигурации:
npm -v
Output6.4.1
Чтобы некоторые пакетыnpm
работали (например, те, которые требуют компиляции кода из исходного кода), вам необходимо установить пакетbuild-essential
:
sudo apt install build-essential
Теперь у вас есть необходимые инструменты для работы с пакетамиnpm
, которые требуют компиляции кода из исходного кода.
Установка с использованием NVM
Альтернативой установке Node.js сapt
является использование инструмента под названиемnvm
, что означает «Диспетчер версий Node.js». Вместо того, чтобы работать на уровне операционной системы,nvm
работает на уровне независимого каталога в вашем домашнем каталоге. Это означает, что вы можете установить несколько автономных версий Node.js, не затрагивая всю систему.
Управление вашей средой с помощьюnvm
позволяет вам получать доступ к новейшим версиям Node.js, а также сохранять и управлять предыдущими выпусками. Однако эта утилита отличается отapt
, и версии Node.js, которыми вы управляете с ее помощью, отличаются от версий, которыми вы управляете с помощьюapt
.
Чтобы загрузить сценарий установкиnvm
изproject’s GitHub page, вы можете использоватьcurl
. Обратите внимание, что номер версии может отличаться от того, что выделено здесь:
curl -sL https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh -o install_nvm.sh
Проверьте сценарий установки с помощьюnano
:
nano install_nvm.sh
Запустите скрипт сbash
:
bash install_nvm.sh
Программа установит программное обеспечение в подкаталог вашего домашнего каталога на~/.nvm
. Он также добавит необходимые строки в ваш файл~/.profile
для использования этого файла.
Чтобы получить доступ к функциямnvm
, вам нужно либо выйти и снова войти в систему, либо создать файл~/.profile
, чтобы ваш текущий сеанс знал об изменениях:
source ~/.profile
Установивnvm
, вы можете установить изолированные версии Node.js. Для получения информации о доступных версиях Node.js введите:
nvm ls-remote
Output...
v8.11.1 (Latest LTS: Carbon)
v9.0.0
v9.1.0
v9.2.0
v9.2.1
v9.3.0
v9.4.0
v9.5.0
v9.6.0
v9.6.1
v9.7.0
v9.7.1
v9.8.0
v9.9.0
v9.10.0
v9.10.1
v9.11.0
v9.11.1
v10.0.0
Как вы можете видеть, текущая версия LTS на момент написания этой статьи - v8.11.1. Вы можете установить это, набрав:
nvm install 8.11.1
Обычноnvm
переключается на использование последней установленной версии. Вы можете указатьnvm
использовать только что загруженную версию, набрав:
nvm use 8.11.1
Когда вы устанавливаете Node.js с помощьюnvm
, исполняемый файл называетсяnode
. Вы можете увидеть версию, используемую в настоящее время оболочкой, набрав:
node -v
Outputv8.11.1
Если у вас несколько версий Node.js, вы можете увидеть, что установлено, набрав:
nvm ls
Если вы хотите установить одну из версий по умолчанию, введите:
nvm alias default 8.11.1
Эта версия будет автоматически выбрана при создании нового сеанса. Вы также можете ссылаться на него по псевдониму, например так:
nvm use default
Каждая версия Node.js отслеживает собственные пакеты и имеетnpm
для управления ими.
Вы также можете разместить установочные пакетыnpm
в каталоге./node_modules
проекта Node.js. Используйте следующий синтаксис для установки модуляexpress
:
npm install express
Если вы хотите установить модуль глобально, сделав его доступным для других проектов, использующих ту же версию Node.js, вы можете добавить флаг-g
:
npm install -g express
Это установит пакет в:
~/.nvm/versions/node/node_version/lib/node_modules/express
Глобальная установка модуля позволит вам запускать команды из командной строки, но вам нужно будет связать пакет с вашей локальной сферой, чтобы запросить его из программы:
npm link express
Вы можете узнать больше о вариантах, доступных вам сnvm
, набрав:
nvm help
Удаление Node.js
Вы можете удалить Node.js, используяapt
илиnvm
, в зависимости от версии, на которую вы хотите настроить таргетинг. Чтобы удалить стабильную версию дистрибутива, вам нужно будет работать с утилитойapt
на системном уровне.
Чтобы удалить стабильную версию дистрибутива, введите следующее:
sudo apt remove nodejs
Эта команда удалит пакет и сохранит файлы конфигурации. Они могут быть вам полезны, если вы собираетесь установить пакет позже. Если вы не хотите сохранять файлы конфигурации для последующего использования, выполните следующее:
sudo apt purge nodejs
Это удалит пакет и удалит файлы конфигурации, связанные с ним.
В качестве последнего шага вы можете удалить все неиспользуемые пакеты, которые были автоматически установлены вместе с удаленным пакетом:
sudo apt autoremove
Чтобы удалить версию Node.js, которую вы включили с помощьюnvm
, сначала определите, является ли версия, которую вы хотите удалить, текущей активной версией:
nvm current
Если версия, на которую вы нацеливаетесь,not является текущей активной версией, вы можете запустить:
nvm uninstall node_version
Эта команда удалит выбранную версию Node.js.
Если версия, которую вы хотите удалитьis, является текущей активной версией, вы должны сначала деактивироватьnvm
, чтобы изменения вступили в силу:
nvm deactivate
Теперь вы можете удалить текущую версию с помощью приведенной выше командыuninstall
, которая удалит все файлы, связанные с целевой версией Node.js, за исключением кешированных файлов, которые можно использовать для переустановки.
Заключение
Существует несколько способов начать работу с Node.js на вашем сервере Ubuntu 18.04. Ваши обстоятельства будут определять, какой из вышеперечисленных методов лучше всего подходит для ваших нужд. Хотя использование упакованной версии в репозитории Ubuntu является самым простым методом, использованиеnvm
обеспечивает дополнительную гибкость.