Как обновить node js
Перейти к содержимому

Как обновить node js

  • автор:

Решаем проблему с обновлением Node.js на Astra Linux 2.12.48

Решаем проблему с обновлением Node.js на Astra Linux 2.12.48

Решаем проблему с обновлением NodeJs на Astra Linux 2.12.48 Сегодня при попытке обновления sudo apt update я получил такую ошибку:

Ошк:3 https://deb.nodesource.com/node_16.x stretch Release server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

При этом остальные репозитории обновились без проблем! Эта ошибка означает некоторую что у сервера возникла deb.nodesource.com проблема с сертификатами! Данная ошибка препятствует обновлению Node.js до последней версии. В этой статье мы рассмотрим способы решения данной проблемы. После непродолжительного поиска я нашел причину на сайте: https://docs.certifytheweb.com/docs/kb/kb-202109-letsencrypt/ Как оказалось истек сертификат DST Root CA X3 и все его промежуточные R3 . На всякий случай проверим текущую дату на сервере:

date Вс окт 3 18:08:10 +11 2021

Дата и время установлены корректно. На данный момент нормального решения нет, мы используем обходной путь – отключим https для репозитория NodeJS и обновим PGP ключи для него.

Обновляем настройки репозиториев apt

Откроем файл

sudo mcedit /etc/apt/sources.list.d/nodesource.list

Заменим его содержимое на:

deb [trusted=yes] http://deb.nodesource.com/node_16.x stretch main deb-src [trusted=yes] http://deb.nodesource.com/node_16.x stretch main 

Добавим ключи GPG для deb.nodesource.com Запустим

sudo curl -s http://deb.nodesource.com/gpgkey/nodesource.gpg.key | sudo apt-key add - OK

Обновим apt

apt update Сущ:1 https://download.astralinux.ru/astra/stable/orel/repository orel InRelease Пол:2 http://deb.nodesource.com/node_16.x stretch InRelease [4 585 B] Пол:3 http://deb.nodesource.com/node_16.x stretch/main amd64 Packages [766 B] Получено 5 351 Б за 1с (3 650 Б/c) Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Может быть обновлён 1 пакет. Запустите «apt list --upgradable» для показа.
apt upgrade Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Расчёт обновлений… Готово Пакеты, которые будут обновлены: nodejs обновлено 1, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено. Необходимо скачать 26,3 MБ архивов. После данной операции, объём занятого дискового пространства возрастёт на 3 077 kB. Хотите продолжить? [Д/н] y Пол:1 http://deb.nodesource.com/node_16.x stretch/main amd64 nodejs amd64 16.10.0-1nodesource1 [26,3 MB] Получено 26,3 MБ за 6с (4 329 kБ/c) (Чтение базы данных … на данный момент установлено 151773 файла и каталога.) Подготовка к распаковке …/nodejs_16.10.0-1nodesource1_amd64.deb … Detected old npm client, removing. Распаковывается nodejs (16.10.0-1nodesource1) на замену (16.4.1-1nodesource1) … Настраивается пакет nodejs (16.10.0-1nodesource1) … Обрабатываются триггеры для man-db (2.7.6.1-2) …

Теперь наша система снова нормально обновляется.

Заключение

Сегодня мы рассмотрели способ решения проблемы с истекшим корневым сертификатом DST Root CA X3 при обновлении Node.js Внесли изменения в настройки репозитория deb.nodesource.com и добавили для него GPG ключи.

Как установить Node.js в Ubuntu 22.04

Среда Node.js удобна тем, что в ней можно реализовывать код JavaScript вне браузера. Используя исключительно JavaScript, можно разрабатывать внешний интерфейс и серверную часть. На сегодняшний день большой процент компаний выбирает Node.js для создания веб-приложений и сайтов. В этот список входят такие ведущие компании, как Uber, Netflix, LinkedIn и другие.

Чтобы приступить к разработке, необходимо загрузить платформу на сервер. В данном руководстве вы найдете три варианта, как установить Node.js на Ubuntu . Мы будем использовать обновленную версию Ubuntu 22.04, релиз которой состоялся в апреле 2022. Для работы в ОС нам понадобится аккаунт пользователя с правами sudо.

Установка Node.js на Ubuntu 22.04

Способ 1: Через репозиторий операционной системы

Этот вариант один из самых быстрых, однако, он не дает возможность выбора версии. Из репозитория Ubuntu, обновленного этой весной, можно загрузить только одну версию —12.22.9. Здесь важно разграничивать, что это не последняя версия, выпущенная Node, а последняя версия Node.js Ubuntu . И только при очередном обновлении ОС в комплектацию будет включен другой пакет. Установка осуществляется в несколько этапов, которые представлены ниже.

Выполните синхронизацию списка пакетов в репозитории и запустите установку:

sudo apt update
sudo apt install nodejs

Advanced Packaging Tool — это пакетный менеджер, который содержит утилиты для управления программными пакетами. Он отвечает за их установку, обновление и удаление. apt является базовой программой, которая входит в состав Ubuntu, и мы будем использовать ее как в первом, так и во втором способе.

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

node -v

v12.22.9

Каждому экземпляру Node принадлежит собственная версия npm (n ode package manager). Это стандартный менеджер пакетов, который входит в состав экосистемы Node.js. Он устанавливает дополнительные модули, необходимые для проекта, используя сторонние источники.

Загрузите диспетчер пакетов и проверьте его установку:

sudo apt install npm
npm -v

Если вы решите удалить установленный пакет Node.js, запустите команду:

sudo apt remove nodejs

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

Способ 2: Через официальный репозиторий NodeSource

Из NodeSource можно загрузить версию с поддержкой LTS или новые пакеты.

Перед загрузкой скрипта установите curl , если его еще нет в системе:

sudo apt install curl

Затем загрузите репозиторий в свою систему:

curl -fsSL https://deb.nodesource.com/setup_16.x I sudo -E bash -

Замените значение 16.x на v18.x, v17.x или v14.x, если вам нужен другой пакет.

Перед установкой рекомендуем проверить систему на наличие старых пакетов программного приложения. Если такие имеются, то рекомендуется их удалить.

Инсталлируйте Node.js на сервер при помощи базовой команды:

sudo apt install nodejs

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

node -v && npm –v

v16.18.0
v8.19.2

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

Способ 3: Через NVM (Node Version Manager)

Работать в режиме многозадачности помогает nvm . Используя этот инструмент, можно устанавливать любые версии Node.js одновременно и свободно переключаться с одной на другую. Node.js выпускает незначительные обновления с периодичностью в несколько недель. Ниже покажем, как с помощью nvm запустить обновление Node.js в Ubuntu, используя только одну команду.

Для начала проверьте наличие утилиты curl и установите ее в систему:

sudo apt install curl

Затем загрузите скрипт:

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

Перезагрузите конфигурацию оболочки:

source ~/.bashrc

Получите перечень версий Node, готовых к загрузке:

nvm list-remote

Вы можете выбрать между двумя версиями, разница которых в цикле поддержки: LTS и сurrent. Версия с долгосрочной поддержкой уже протестирована и работает на протяжении долгого периода времени, а current отличается обновленным функционалом, но может содержать ошибки.

На данном этапе можно инсталлировать выбранную версию:

nvm install [version.number]

Ознакомиться со списком загруженных версий можно при помощи команды:

nvm list

В первой строке будет отображаться текущая версия. Чтобы обновить версию Node.js в Ubuntu и переключиться с одной версии на другую, воспользуйтесь командой:

nvm use [version.number]

Заключение

При выборе способа установки Node.js в Ubuntu необходимо отталкиваться от своих задач и версии платформы, которая понадобится для их выполнения. Первый способ самый быстрый, но в большинстве случаев применяется для обучения, тестирования и отработки навыков. Используя его в разработке, есть риск потерять много времени. Чтобы развернуть готовый проект на Node.js и попробовать новые версии, рекомендуем воспользоваться установкой из NodeSource. А для продвинутых пользователей лучше сразу выбирать диспетчер пакетов узлов, чтобы инсталлировать несколько версий одновременно и управлять ими.

Обновление Node.js

Логотип node.js

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

Релизы

График выпуска Node.js должен быть предсказуемым, чтобы пользователи могли планировать свои миграции. По графику (рисунок 1):

Рис. 1. Проект Node.js опубликовал временную шкалу для предстоящих выпусков (источник: https://github.com/nodejs/release).

  • Node.js 12 прекратит свое существование в конце апреля 2022 года.
  • Node.js 14 и 16 находятся на этапе долгосрочной поддержки и будут поддерживаться до апреля 2023 и апреля 2024 года соответственно.
  • Node.js 17 — это наша текущая линейка выпусков, которая будет поддерживаться до июня 2022 года.

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

Новые фичи

Как всегда, участники усердно работают над добавлением новых функций в Node.js, перечисленных в виде pull requests на GitHub. Далее мы подробно расскажем о нескольких последних дополнениях.

HTTP — fetch()

fetch() из коробки ! Экспериментальная реализация этого долгожданного метода появилась и отправлена в Node.js 17.5.0. Глобальный fetch() изначально будет доступен только при использовании в —experimental-fetch в параметрах запуска из командной строки. Реализация основана на undici , клиенте HTTP/1.1, написанном для Node.js участниками проекта. Пример использования:

import from 'undici'; async function fetchJson() < const res = await fetch('https://api.github.com/zen'); console.log(res); >

Включение этой функции частично было ускорено обсуждениями на последнем мини-саммите Node.js Next 10 в январе 2022 г., где проект определил и согласовал приоритеты для HTTP в Node.js. Вы можете посмотреть обсуждение на YouTube или прочитать резюме на GitHub.

Модули ECMAScript

В последние месяцы проект продолжал успешно внедрять модули ECMAScript. И ключевые вехи включают стабильные модули JSON . Хотя модули JSON остаются экспериментальными, теперь они включены по умолчанию, начиная с Node.js 17.5.0.

Также была добавлена ​​поддержка утверждений импорта JSON, демонстрируемая следующим синтаксисом:

import example from './example.json' assert < type: 'json' >;

Другие новые функции

Некоторые перспективные разработки:

  • В экспериментальное подмножество API-интерфейсов планирования разработанный группой сообщества Web Platform Incubator (WICG), включая методы scheduler.wait() и scheduler.yield() . См. RFC — timers: add experimental scheduler api #40909
  • В поддержку сертификатов x509 добавлен метод сheckHost() совместимый с RFC 2818 (HTTP через TLS). См. RFC crypto: support RFC 2818 compatible checkHost #41569.
  • В API Node.js был добавлен новый экспериментальный метод node_api_symbol_for() для упрощения использования символов в пользовательских дополнениях и расширениях на С и С++. См. node-api: add node_api_symbol_for() #41329.

Горячие темы в сообществе Node.js

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

Primordials в ядре Node.js

Primordials используются в ядре Node.js в попытке предотвратить вмешательство во встроенные модули Node.js, в том числе от атак типа «загрязнение прототипа».

Использование primordials в ядре Node.js обсуждается в рамках проекта и Технического руководящего комитета Node.js (TSC). Обсуждение касается баланса между тем, насколько защищенными от взлома должны быть основные API, ценой защиты от взлома и затратами на поддержку кода, нагрузкой на производительность во время выполнения и усилиями, необходимыми для предотвращения возможного переопределения модели.

Обновление цепочки инструментов, используемой для сборки Node.js

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

  • analysis: add cmake toolchain analysis #9
  • analysis: add Bazel toolchain analysis #8
  • analysis: add GN toolchain analysis #7

Для тех кто хочет попробовать свои силы в команде Node.js, есть призыв помочь в продвижении этой миграции.

Next 10: Будущее Node.js

Группа Node.js Next 10 продолжает работать над выявлением и документированием ключевых технических приоритетов проекта. Недавно команда провела два мини-саммита. Один из них состоялся в ноябре 2021 года и касался подходящих типов для конечных пользователей и отдельных исполняемых приложений. Другой состоялся в январе 2022 года и был посвящен современным реализациям HTTP и документации.

Они хорошо поработали на этих двух саммитах, что привело к некоторым конкретным результатам. Например, благодаря обсуждениям HTTP, как упоминалось ранее, fetch() теперь это экспериментальный API. Также в сообществе договорились изучить возможность обновления руководства по стилю, для создания более качественной документации в формате JSON, которую можно было бы использовать для более простого создания информации о типах.

Если вы хотите помочь Node.js стать лучше, смело обращайтесь в группу Next 10. Можете принять участие в обсуждениях в репозитории GitHub и посетить следующие встречи и мини-саммиты, которые можно найти в Календаре встреч проекта Node.js.

Так -же для просмотра доступны записи мини-саммитов Node.js Next 10:

  • Запись мини-саммита за ноябрь 2022 г. (Типы и отдельные двоичные исполняемые файлы)
  • Запись мини-саммита за январь 2022 г. (современный HTTP и документация)

Предстоящие события

Хотя ездить на конференции по-прежнему сложно, мы все надеемся, что ситуация станет лучше, когда придет время OpenJS World в Остине в июне 2022 года. Тем временем сообщество выступает виртуально на DevConf.cz , и планирует обсудить навигацию по экосистеме npm на предприятии в ходе предстоящей конференции CityJS в Лондоне 25 марта 2022 года.

Будьте в курсе обновлений Node.js

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

  • Node.js в Red Hat Developer
  • Node.js в IBM Developer
  • Блог проекта Node.js

How do I update Node.js?

This question’s answers are a community effort. Edit existing answers to improve this post. It is not currently accepting new answers or interactions.

На этот вопрос есть ответы на Stack Overflow на русском: Как обновить NodeJS?
I did the following to update my npm:

npm update npm -g 

But I have no idea how to update Node.js. Any suggestions? (I’m using Node.js 0.4.1 and want to update to Node.js 0.6.1.)

36.2k 22 22 gold badges 196 196 silver badges 262 262 bronze badges
asked Nov 19, 2011 at 2:37
54.1k 78 78 gold badges 244 244 silver badges 422 422 bronze badges

Possible duplicate: How can I update NodeJS and Npm for the next versions? . (should at the very least be linked)

Dec 5, 2012 at 0:39
Possible duplicate of Upgrading Node.js to latest version
Jan 7, 2016 at 22:09
I don’t really get why most of the answers suggest to install third party tools :/
Jul 24, 2016 at 21:35

Things have gotten quite a bit easier since this question was first answered (if you don’t need version management) : All platforms (Windows, Mac & Linux)

Nov 4, 2017 at 7:08
Possible duplicate of How can I update Node.js and npm to the next versions?
Nov 9, 2017 at 6:35
Comments disabled on deleted / locked posts / reviews |

30 Answers 30

To upgrade Node you may first want to see which version of Node.js you are currently using:

node --version 

Find out which versions of Node.js you may have installed and which one of those you’re currently using:

nvm ls 

List all versions of Node.js available for installation:

nvm ls-remote 

Apparently for Windows the command would be rather like this:

nvm ls available 

Assuming you would pick Node.js v8.1.0 for installation you’d type the following to install that version:

nvm install 8.1.0 

You are then free to choose between installed versions of Node.js. So if you would need to use an older version like v4.2.0 you would set it as the active version like this:

nvm use 4.2 

That should be all.

In 2013 I used the following instructions to upgrade from Node.js version 0.10.6 to 0.10.21 on a Mac, for more recent instructions see above.

Update from 2017: Please mind, Mr. Walsh himself recommended to update Node.js just using nvm instead.

    Clear NPM’s cache:

 sudo npm cache clean -f 
 sudo npm install -g n 
 sudo n stable 

Alternatively pick a specific version and install like this:

sudo n 0.8.20 

For production environments you might want to pay attention to version numbering and be picky about odd/even numbers.

  • General procedure: D.Walsh
  • Stable/unstable versions: P.Teixeira

answered Oct 25, 2013 at 8:06
Oliver Schafeld Oliver Schafeld
18.1k 2 2 gold badges 17 17 silver badges 13 13 bronze badges

You should credit your source — your answer is quoted from David Walsh’s blog: davidwalsh.name/upgrade-nodejs. It should also be noted that this method has major caveats, some rather destructive, as seen in the comments on the original blog post.

Jun 25, 2015 at 17:15

Unfortunately that din’t worked for me.. was doing exact as described on a Linux machine — ‘node -v’ before and after showed ‘v0.10.5’

Jul 20, 2015 at 9:47
One more step. Close and re-open terminal or if using ssh, exit and log back in to see new node-v
Jul 26, 2015 at 3:30

@Rob Imig : Globally installed scripts usually go to places like /usr/local/bin that require special permissions for installation. Further information: github.com/npm/npm/issues/3139 A possible fix/workaround (if you really want to avoid using sudo ): stackoverflow.com/questions/16724259/npm-command-sudo-or-not

Apr 20, 2016 at 7:58

Seems to work for me but just followed the link to David Walsh’s Blog above and he explicitly says not to use it — be warned!

Jun 28, 2017 at 18:16

It’s a Bash script that lets you download and manage different versions of node. Full source code is here.

There is a separate project for nvm for Windows: github.com/coreybutler/nvm-windows

Below are the full steps to use NVM for multiple version of node on windows

enter image description here

  1. download nvm-setup.zip extract and install it.
  2. execute command nvm list available from cmd or gitbash or powershell, this will list all available version of node
  3. use command nvm install version e.g. nvm install 12.14.0 to install on the machine
  4. last once installed use nvm use version to use newer version e.g. nvm use 12.14.0

2,196 24 24 silver badges 23 23 bronze badges
answered Nov 19, 2011 at 2:39
21.7k 2 2 gold badges 32 32 silver badges 32 32 bronze badges
FYI, the command to run once having install NVM is ‘nvm install ‘. For example ‘nvm install v0.8.7’
Aug 18, 2012 at 13:55
You don’t need this. Node is not Ruby.
May 3, 2015 at 13:00
@SimonEast There is an nvm for windows: github.com/coreybutler/nvm-windows
Nov 18, 2015 at 10:45

@PhilHannent as per NVM github page, they don’t support NVM on windows, so one can say that «there is no official NVM for windows»

Nov 21, 2016 at 0:07

For windows just download latest version and install it. It will be automatically updated to new version you downloaded.

Mar 25, 2019 at 4:54

Any OS (including Windows, Mac & Linux)

Updated October 2022

Just go to the official Node.js site (nodejs.org), download and execute the installer program.

It will take care of everything and with a few clicks of ‘Next’ you’ll get the latest Node.js version running on your machine. Since 2020 it’s the recommended way to update NodeJS. It’s the easiest and least frustrating solution.

Download NodeJS for Windows, buttons

Download NodeJS for Win/Mac/Source Code buttons

Pro tips

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *