Несколько версий node js ubuntu

Обновлено: 03.07.2024

NVM , также известный как Node Version Manager, это аналог RVM (Ruby Version manager) для языка Ruby. NVM позволяет устанавливать и управлять множеством версий NodeJS в рамках одной системы, а также использовать определенную версию для приложения.

В этой статье я расскажу как установить и управлять NodeJS с помощью NVM .

По умолчанию NVM устанавливается в домашнюю директорию текущего пользователя. поэтому установленные версии nodejs с помощью nvm одного пользователя будут недоступны другим пользователям. Пользователи Windows могут прочитать как установить NodeJS в Windows системах.

Шаг 1 - Установка NVM

Сначала вы должны установить NVM в систему. Разработчики NVM подготовили для этого Bash скрипт-установщик. Используйте эту,чтобы установитьNVM:

После чего надо обновить системные переменные с помощью команд ниже, иначе потребуется перезапуск сеанса (или переподключение по SSH).

Шаг 2 - Список доступных версий NodeJS

Теперь, когда вы установили nvm, вы можете использовать его. Но для начала нужно установить какую-либо версию NodeJS. С помощью опции ls-remote вы можете просмотреть список доступных версий

В результате вы увидите длинный список доступных версий.

.
.
v10.16.1 (LTS: Dubnium)
v10.16.2 (LTS: Dubnium)
v10.16.3 (Latest LTS: Dubnium)
.
.
v12.10.0
v12.11.0
v12.11.1
v12.12.0

Шаг 3 - Установка NodeJS с помощью NVM

Выберите версию из списка выше, которая вам нужна и установите ее. В этом примере я буду использовать LTS версию v10.16.3 :

И дополнительно установлю актуальную версию

Повторяя команду с нужными версиями установите все необходимые вам версии NodeJS.

Шаг 4 - Установка версии по умолчанию

После того, как вы установите несколько версий, вы должны выбрать какая версия будет использоваться по умолчанию (для вариантов, когда нет четкого указания на нужную версию). С помощью команды ниже вы можете проверить список установленных версий и какая из них указана как версия по умолчанию.

-> v10.16.3
v12.8.0
system
default -> v12.8.0
node -> stable (-> v12.12.0) (default)
stable -> 12.8 (-> v12.12.0) (default)
iojs -> N/A (default)
unstable -> N/A (default)
lts/* -> lts/dubnium (-> v10.16.3)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.16.0 (-> N/A)
lts/dubnium -> v10.16.3

Как вы можете видеть - версией по умолчанию установлена v10.16.3. Вы можете изменить ее на другую используя следующую команду(я изменю на 10.16.2 ).

Проверим текущую версию NodeJS

Шаг 5 - Запуск приложения с определенной версией NodeJS

Когда у вас много приложений и вы хотите для каждого из них указать свою определенную версию, то вы можете использовать следующую команду nvm, к примеру запуск приложения app.js в версии 10.16.3

Шаг 6 - Удаление неиспользуемых версий NodeJS

Просмотрите список установленных версий командой

И удалите ненужные вам версии с помощью команды ниже. К примеру я удалю версию 10.16.3

Версия Node.js 15 была выпущена 20 октября 2020 года. Она поставляется с npm 7 и множеством новых функций. Вы уже успели опробовать новую версию?

Но подождите минутку! Node.js 15 и npm 7 содержат критические изменения. Не повредит ли тогда обновление существующим проектам?


Теоретически может повредить!

К счастью, у нас есть NVM (Node Version Manager), который избавит нас от этой опасности. Давайте детально рассмотрим данный инструмент, чтобы без проблем обновить версии node.js и npm.

Установка NVM

nvm управляет версиями node.js и npm. Он устанавливается для конкретного пользователя и может быть вызван отдельно для каждой оболочки. nvm работает с любой POSIX-совместимой оболочкой (sh, dash, ksh, zsh, bash), в том числе на платформах: unix, macOS и windows WSL.

nvm можно установить с помощью команд curl или wget:

Скрипт install.sh клонирует репозиторий nvm в

/.nvm и пытается добавить исходные строки из приведенного ниже фрагмента в нужный файл профиля (

/.bash_profile мы видим, что строки добавлены:

Использование NVM

Итак, мы установили nvm. Теперь используем данную команду для установки последней версии node.js:


В выходных данных из примера выше указано, что npm 7.0.15 используется вместе с node.js 15.4.0 . Проверим:


Также мы можем указать нужную версию для установки. Семантический формат версии определяется SemVer:


Если указанная версия уже была установлена, она не переустанавливается:


Мы можем вывести на экран все установленные версии:


В приведенных выше примерах вывода символ -> указывает, что текущая версия node.js — 10.14.0 . Стрелка также представляет значения для default ( 12.16.0 ), node ( 15.4.0 ) и stable ( 15.4.0 ).

nvm use заменяет текущую версию:


Возможно, вы спросите, как так получилось, что v10.16.0 использует более позднюю версию npm, чем v13.9.0 . Эту задачу можно решить с помощью следующих команд:


Данная команда позволяет получить последнюю поддерживаемую версию npm для текущей версии Node.js:


nvm use устанавливает нужную версию только для текущей оболочки. Если вы измените оболочку, только что обновленная версия node.js будет потеряна.

Как сделать определенную версию Node.js постоянной?

Версия по умолчанию — такая версия, которая распространяется на все оболочки.

Команда nvm alias позволяет установить версию по умолчанию.

Для удобства можно создать файл .nvmrc , который принимает формат SemVer, node или default . После этого nvm use , nvm install , nvm exec , nvm run и nvm which будут использовать версию, указанную в файле .nvmrc , если в командной строке не указана другая.


Мы можем проверить текущую версию с помощью следующей команды:


ls-remote выводит на экран все доступные версии, но будьте готовы к очень длинному списку.


Обратим внимание, что название версии в сокращенной форме значительно сокращает весь список.


nvm which указывает путь к исполняемому файлу, где nvm был установлен. Мы установили такие версии node.js, как 10.14.0 , 10.15.0 и 10.16.0 . Вот результаты nvm which :


Указанную версию Node.js можно использовать непосредственно для запуска приложений:


Как вариант, данная команда запускает node app.js с переменной PATH, указывающей на версию 10.15.0 .


Если вам нужно больше nvm-команд, запустите команду help :

Обновление NVM

Мы можем использовать nvm для обновления node.js и npm. Но как обновить сам nvm ?

Перед обновлением у нас установлен nvm 0.34.0 .

Обновляем до версии 0.37.2.


Как указано в выводе, нам нужно закрыть и снова открыть терминал, чтобы использовать новую версию:


По сравнению с версией 0.34.0 , в версии 0.37.2 добавлена функция nvm set-colors для вывода на консоль.

Что такое Node.js?

Node.js это среда выполнения JavaScript с открытым исходным кодом, в основном используется для написания веб-серверов, сайтов или RESTful API. Его базовая функциональность поддерживается модулями которые базируются на API, спроектированом так что бы сделать написание серверных приложения легче. Node.js приложения можно запускать на разных платформах: Linux, macOS и Windows, а также они могут быть написаны на любом языке который компилируется в JavaScript, например таких как CoffeeScript, Dart и TypeScript.

Node.js похож на PHP, но существует несколько значительных различий . В PHP, функции блокирует поток выполнения пока не выполнятся, что означает что может выполнятся только одна команда подряд. В Node.js существует возможность выполнять операции IO, запросы в базу асинхронно.

Обновления версий Node.js

Новый релиз Node.js выполняется раз в полгода с master ветки в GitHub, примерно в Апреле и Октябре. Когда выходит новая версия с нечетным номером, самые новые версии с четными номерами стают long-term support (LTS). Версии до LTS получают активную поддержку на 18 месяцев, а потом ще 12 месяцев технической поддержки. В тоже время активные версии получают non-breaking бэкпорты с любыми изменениями реализованными в самой последней версии несколько недель после релиза.

Что такое Node Version Manager (NVM)?

Какие операционные системы поддерживает Node Version Manager ?

Установка NVM на OS X и Linux

Сначала, удостоверьтесь в том что утилита совместима с вашей версией операционной системы. Также технически вам не нужно удалять уже установленый Node, но лучше сделать это, кроме того, нужно удалить любые прежнюю версию npm.
C++ компилятор необходим для поддержки версий предшествующий 0.8.6. Даже если вы обычно работаете только с LTS или более современными релизами, вы все де можете установить компилятор C++. Если вы у вас OS X, ваш лучший выбор это Xcode. Чтобы установить его выполните следующую команду:

Если вы используете Linux, выполните следующую команду, чтобы установить build-essential package вместе с Advanced Package Tool:

После этого, вы можете установить Node Version Manager используя cURL или Wget. Для cURL выполните следующую команду:

Для Wget выполните следующую команду:

/.nvm и применят изменения для вашего bash профиля, так что вы сможете иметь доступ к Node Version Manager где-угодно в вашем терминале.

Установка NVM на Windows

Как использовать NVM

Есть несколько важных вещей которые нужно знать чтобы использовать NVM эффективно, ниже они будут описаны и будут приведены примеры как делать определенные задачи.

Установка разных версий Node.js

Менеджер версий делает установку разных версий Node.js очень простой с помощью одной команды. Просто запустите команду install и передайте ей параметром необходимую версию. Например, если вы хотите установить Node.js версии v6.5.0, выполните следующую команду:

Так как утилита следует SemVer, вы можете устанавливать патчи командой install с аргументом номера патча. Для получения списка доступных версий в Linux и OS X, выполните:

Если вы используете Windows, выполните следующую команду:

Если вам нужно удалить екземпляр Node, просто выполните nvm uninstall c нужным номером версии.

Глобальные npm пакеты

Стоит заметить то что глобально установленный npm пакеты не разделяются между разными версиями Node.js, потому что они могут причинить проблемы несовместимости. Поэтому, Node Version Manager одновременно устанавливает совместимую версию npm каждый раз когда вы устанавливаете какую то версию Node.js. Так как каждый экземпляр Node имеет собственную версию npm, вы можете запустить npm -v что-бы проверить какая версия сейчас используется. Также не нужно иметь sudo права при установке глобальных пакетов. Если вы хотите переустановить глобальные npm пакеты для определенной версии Node.js или при ее установке, сделайте так:

Команда выше устанавливает Node 6.5.0 и необходимую npm, потом переустанавливает все установленные пакеты в версии 4.2

Алиасы

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

Также существует алиас по умолчанию. Для установки версии по умолчанию используйте такую команду

Кроме того, вы можете создавать собственные алиасы:

Для удаления алиаса, выполните команду unalias:

Переключения между версиями Node.js

Каждый раз как вы устанавливаете новую версию Node.js, она будет автоматически выбираться для использования. Для переключения между версиями используется команда, nvm use которая работает почти также как и команда install. Например если вы хотите переключиться на последнюю стабильную версию, выполните команду

Для получения списка всех установленных версий Node, используется команда nvm ls:

Активная версия будет помечена зеленым цветом и стрелочкой, также текущую версию можно получить с помощью команды:

Дополнительные команды

Преимущества использования Node Version Manager

Кроме экономии времени и усилий, возможность переключения между версиями Node имеет еще несколько значительных выгод. Например, например если вы хотите проверить работу некоторого пакета на определенной версии Node, или если вам нужно воспроизвести баг на нужной версии, NVM позволяет быстро переключиться и сделать отладку.

Заключение

Знание, как правильно использовать Node Version Manager, может помочь сохранить много времени, которое всегда ценно для разработчиков.

Node.js — это среда выполнения JavaScript для программирования на стороне сервера. Она позволяет разработчикам создавать масштабируемый серверный функционал с помощью JavaScript, языка, который многим уже знаком по веб-разработке под браузер.

В этом обучающем модуле мы покажем вам три разных варианта установки Node.js на сервере Ubuntu 20.04:

  • использование apt для установки пакета nodejs из репозитория ПО Ubuntu по умолчанию
  • использование apt с альтернативным репозиторием ПО PPA для установки определенных версий пакета nodejs
  • установка диспетчера nvm (Node Version Manager) и его использование для установки нескольких версий node и управления ими

Для многих пользователей будет достаточно использовать apt с репозиторием по умолчанию. Если вам требуется определенная более новая (или старая) версия Node, вам следует использовать репозиторий PPA. Если вы занимаетесь активной разработкой приложений Node, и вам нужно часто переключаться между версиями node , используйте метод nvm .

Предварительные требования

Для целей этого обучающего модуля предполагается, что вы используете ОС Ubuntu 20.04. Для начала вам потребуется учетная запись пользователя без привилегий root с привилегиями sudo. Чтобы создать такую учетную запись следуйте указаниям обучающего модуля «Начальная настройка сервера Ubuntu 20.04».

Вариант 1 — Установка Node.js с помощью Apt из репозиториев по умолчанию

В репозиториях Ubuntu 20.04 по умолчанию содержится версия Node.js, обеспечивающая согласованную работу в разных системах. На момент составления этого обучающего модуля в репозиториях хранится версия 10.19. Это не самая последняя версия, но она должна быть стабильной и подходить для небольших экспериментов с языком.

Для получения этой версии можно использовать диспетчер пакетов apt . Обновите указатель локальных пакетов с помощью следующей команды:

Выполните установку Node.js:

Проверьте, что установка выполнена успешно, запросив у node номер версии:

Если пакет из репозитория отвечает вашим потребностям, для начала работы с Node.js ничего больше не потребуется. В большинстве случаев также нужно установить npm , диспетчер пакетов Node.js. Для этого установите пакет npm с помощью apt :

Это позволит вам устанавливать модули и пакеты для использования с Node.js.

Вы успешно установили Node.js и npm , используя apt и репозитории ПО Ubuntu по умолчанию. В следующем разделе мы покажем, как использовать альтернативный репозиторий для установки разных версий Node.js.

Вариант 2 — Установка Node.js с помощью Apt через архив NodeSource PPA

Для установки другой версии Node.js вы можете использовать архив PPA (архив персональных пакетов), обслуживаемый NodeSource. Через PPA можно установить другие версии Node.js, кроме доступных в официальных репозиториях Ubuntu. На момент составления этого обучающего модуля доступны версии Node.js v10, v12, v13 и v14.

Вначале установим PPA для получения доступа к его пакетам. Используйте в домашнем каталоге команду curl для получения скрипта установки предпочитаемой версии. Замените 14.x предпочитаемым номером версии (если он отличается).

Дополнительную информацию о доступных версиях можно найти в документации по NodeSource.

Просмотрите содержимое загруженного скрипта в nano (или другом предпочитаемом текстовом редакторе):

Убедившись в безопасности запуска скрипта, закройте редактор и запустите скрипт с привилегиями sudo :

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

Убедитесь в установке новой версии, запустив node с флагом версии -v :

Пакет NodeSource nodejs содержит двоичный код node и npm , так что не нужно устанавливать npm отдельно.

Вы успешно установили Node.js и npm , используя apt и архив NodeSource PPA. В следующем разделе мы покажем, как использовать диспетчер версий Node Version Manager для установки нескольких версий Node.js и управления ими.

Вариант 3 — Установка Node с помощью Node Version Manager

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

Чтобы установить NVM на ваш сервер Ubuntu 20.04, откройте страницу проекта на GitHub. Скопируйте команду curl из файла README, отображаемого на главной странице. Она позволит получить самую последнюю версию скрипта установки.

Прежде чем передавать команду в bash , рекомендуется проверить скрипт, чтобы убедиться, что он не делает ничего, с чем вы не согласны. Вы можете сделать это, удалив сегмент | bash в конце команды curl :

Проверьте и убедитесь, что вы не возражаете против изменений, которые вносит скрипт. Если вас удовлетворит результат, запустите команду еще раз с добавлением | bash в конце. URL-адрес, который вы используете, будет меняться в зависимости от последней версии NVM, но в настоящий момент скрипт можно загрузить и запустить с помощью следующей команды:

Она устанавливает скрипт nvm для вашей учетной записи. Для его использования необходимо сначала получить ваш файл .bashrc :

Теперь вы можете спросить у NVM, какие версии Node доступны:

Это очень длинный список! Вы можете установить версию Node, введя любую версию релиза, которую вы видите. Например, для получения версии 13.6.0 воспользуйтесь следующей командой:

Вы можете увидеть установленные вами различные версии с помощью следующей команды:

Она отображает текущую активную версию на первой строке ( -> v13.6.0 ), за которой следуют псевдонимы и версии, на которые указывают эти псевдонимы.

Примечание. Если у вас также имеется версия Node.js, установленная с помощью apt , здесь вы сможете увидеть системную запись. Вы всегда можете активировать установленную системой версию Node с помощью команды nvm use system ​​​.

Также вы увидите псевдонимы для различных релизов Node с длительной поддержкой (LTS):

Мы можем установить релиз на основе этих псевдонимов. Например, для установки последней версии с долгосрочной поддержкой, erbium , запустите следующую команду:

Вы можете переключаться между установленными версиями с помощью nvm use :

Вы можете проверить, что установка выполнена успешно, с помощью того же метода, использованного в других разделах. Введите следующую команду:

Корректная версия Node установлена на нашем компьютере, как мы и ожидали. Совместимая версия npm также доступна.

Node Js - это платформа на основе JavaScript, которая уже завоевала большую популярность и становится еще более легкой и эффективной для разработчиков. Она позволяет программистам использовать JavaScript как для веб-приложений и пользовательских интерфейсов, так и для обычных программ, благодаря движку V8 от Google.

Для платформы уже создано более чем миллион пакетов, которыми можно управлять с помощью менеджера пакетов Node или NPM. Это отличная система для расширяемости приложения с помощью решений с открытым исходным кодом. В этой статье мы рассмотрим четыре способа установить Node.js в Ubuntu 20.04. Мы рассмотрим их все ниже, но рекомендуется использовать первый:

  • Использовать скрипт NVM, для управления несколькими версиями Node.js;
  • Установить программу из официальных репозиториев вашего дистрибутива;
  • Установить пакеты из PPA;
  • Установка Node.js из бинарных пакетов, распространяемых на официальном сайте;

Первый способ рекомендованный, но второй более простой, третий и четвертый позволяют получить более новые версии программ. Если у вас уже была установлена более старая версия Node js, ее нужно удалить, чтобы не возникало конфликтов, также вы можете просто обновить программу, для этого смотрите статью как обновить Node.js на Windows, Linux и Mac.

Удалить старую версию Node.js

В Ubuntu пакет Node Js называется по-старому - Node, эта программа вам не нужна и вы можете ее удалить. Если программа останется, некоторые операции могут выполняться с помощью нее и это будет вызывать конфликты.

Сначала давайте проверим установлена ли у вас эта программа:

dpkg --get-selections | grep node


Теперь вы можете ее удалить с помощью следующих команд:

sudo apt purge nodejs


Теперь можно переходить к рассмотрению того как установить Node.js в Ubuntu 20.04.

Установка Node.js в Node Version Manager

Чтобы установить Node.js Ubuntu 20.04 с помощью NVM нам понадобится компилятор C++ в системе, а также другие инструменты для сборки. По умолчанию система не поставляется с этими программами, поэтому их необходимо установить. Для этого выполните команду:

sudo apt install build-essential checkinstall

Также нам понадобится libssl:

sudo apt install libssl-dev


После завершения установки вам понадобится перезапустить терминал. Или можно выполнить:

Затем смотрим список доступных версий Node js:


Дальше можно устанавливать Node js в Ubuntu, при установке обязательно указывать версию, на данный момент самая последняя 11.0, но установим десятую:

nvm install 14.0


Список установленных версий вы можете посмотреть выполнив:


Дальше необходимо указать менеджеру какую версию нужно использовать:

Как только появятся более новые версии node js, вы сможете их установить и активировать в системе. Посмотреть версию вы можете выполнив команду:


Чтобы удалить эту версию node js, ее нужно деактивировать:

nvm deactivate 14.0

Затем можно удалить:

nvm uninstall 14.0

Установка Node.js из репозиториев Ubuntu

Это самый простой способ установки этой платформы. Сначала выполните команду:

sudo apt install nodejs


Затем установите менеджер пакетов npm:

sudo apt install npm

Теперь вы можете проверить работоспособность только что установленных программ:

Как видите, при использовании официальных репозиториев вы получаете более старую версию.

Установка Node js из PPA

Установка Node js Ubuntu из PPA, это альтернативный вариант, позволяющий получить более новую версию, достаточно простым способом. Сначала добавьте репозитории Node js в список репозиториев Ubuntu с помощью такой одной из следующих команд. Для установки самой последней версии выполните:


А для стабильной:

Затем просто установите программу с помощью пакетного менеджера:

sudo apt install nodejs


Проверяем, что получилось:


Установка Node js из бинарников

Установка Node.js Ubuntu 20.04 через бинарные файлы не рекомендуется, потому что вы не сможете автоматически обновить программу до новой версии, вам придется повторять процедуру заново. Вы можете скачать установочные файлы Node js из официального сайта проекта. Здесь доступны как 32 битная, так и 64 битная версия. Вам нужно скачать файл именно для своей системы.

Чтобы узнать архитектуру выполните:


Откройте официальный сайт Node.js и найдите нужную версию, затем скачайте архив для своей архитектуры:


Вы можете скачать Node js и с помощью терминала, например, эта команда для 64 бит версии:

Читайте также: