BI Consult Desktop Logo BI Consult Mobile Logo
  • Russian BI Исследование российских bi
  • Перейти на Fine BI
  • Контакты
  • +7 812 334-08-01
    +7 499 608-13-06
  • Отправить сообщение
  • Главная
  • Продукты Эксперт-BI
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Сельское хозяйство
    • Энергетика
    • FMCG
    • Девелоперы
    • Маркетплейсы
    • Пищевая промышленность
    • Фармацевтика
    • Построение Data Platform
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и FP&A
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • IBP
    • ИТ (CIO)
    • Закупки
  • Платформы
    • Системы бизнес-анализа (BI)
    • Интегрированное бизнес-планирование (IBP)
    • Хранилища данных (DWH / Lakehouse)
    • Каталоги данных (Data Catalog)
    • Системы ETL и ELT
    • AI / Исскуственный интеллект
    • Шина данных (ESB)
    • Система управления мастер-данными (MDM)
    • Семантический слой
  • Услуги
    • Переход на отечественные BI и DWH системы
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений и DWH
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Курсы
    • Учебный курс Информационная грамотность (Data Literacy)
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Greenplum
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt (Data Build Tool)
  • Компания
    • Руководство
    • Новости
    • Клиенты
    • Карьера
    • Скачать
    • Контакты

BI

  • FineBI
  • FineReport
  • FineDataLink
  • FineChatBI (FineAI)
  • Коннекторы данных из 1С в BI
  • Airflow / Nifi
  • Visiology
  • PIX BI
  • Modus BI
  • Yandex.DataLens
  • Open-source BI: Superset/Metabase
  • Luxms BI
  • AW BI + Alpha BI
  • FlyBI + Форсайт. Аналитическая Платформа
  • Loginom
  • Триафлай
  • AI / Исскуственный интеллект
  • Optimacros
  • Навигатор BI
  • Семантический слой

СУБД

  • Arenadata
  • ClickHouse
  • Greenplum
  • Postgres Professional
  • TData

Другое

  • Построение Data Platform
    • Аналитическое хранилище данных
    • Data Lake и Data Engineering
    • Подробнее про Data Lake
    • Внедрение Lakehouse
      • Apache Doris
      • StarRocks
      • Trino
    • Миграция витрин из пропиетарных DWH на новый стек
    • Учебный курс "Современная архитектура хранилища данных"
Главная » Курсы по системам бизнес-анализа и методологии » Учебный курс по Open-source BI - Apache Superset, Metabase, Redash » Как установить нужную версию Node.js и npm для разработки

Как установить нужную версию Node.js и npm для разработки

Введение в разработку на Node.js и npm

Спойлер
Лучше использовать NVM для работы с разными версиями node.js и npm

В статье описаны оба подхода — apt и nvm.

 

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

npm означает диспетчер пакетов Node.

npm — это:

  • онлайн-репозиторий для публикации проектов Node.js с открытым исходным кодом
  • утилита командной строки для взаимодействия с указанным репозиторием, помогающая устанавливать пакеты и управлять версиями пакетов и зависимостями.

 

 

Вы определяете все зависимости вашего проекта внутри файла package.json. Каждый раз, когда вам или члену команды нужно приступить к работе над проектом, все, что им нужно сделать, — это запустить npm install.

Node.js — это среда выполнения, которая позволяет запускать JavaScript на серверной части.

 

В чем разница между npm install и npm run build?

npm install устанавливает зависимости в node_modules/ каталог для проекта node, над которым вы работаете. Вы можете вызвать install другой node.js проект (модуль), чтобы установить его в качестве зависимости для вашего проекта.

npm run build ничего не делает, если вы не укажете, что делает «build» в вашем файле package.json. Он позволяет вам выполнять любые необходимые задачи по сборке/подготовке вашего проекта перед его использованием в другом проекте.

 

Что такое package.json?

Файл package.json создается вашим менеджером пакетов (в данном случае npm) и находится в корне проекта в JavaScript/Node. Чтобы создать файл package.json, вы можете запустить npm init . Затем вам будет предложено заполнить некоторые метаданные для вашего проекта.

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

package.json содержит следующие разделы:

  1. name: Этот раздел определяет имя вашего проекта. Оно должно быть уникальным в пределах npm-реестра.
  2. version: В этом разделе указывается текущая версия вашего проекта. Версия обычно следует семантическому версионированию (semver) и имеет формат X.Y.Z, где X — мажорная версия, Y — минорная версия, и Z — патч.
  3. description: Здесь можно добавить описание вашего проекта, чтобы другие разработчики понимали, о чем идет речь.
  4. main: Указывает на точку входа вашего приложения, то есть файл, который будет запущен, когда ваш пакет будет подключен как зависимость в других проектах.
  5. scripts: Этот раздел содержит пользовательские команды (скрипты) для автоматизации различных задач, таких как сборка, тестирование и другие. Например, вы можете создать скрипт "start", который будет запускать ваше приложение.
  6. dependencies: Здесь перечислены зависимости вашего проекта, то есть пакеты, которые ваш проект использует для работы. Эти зависимости будут установлены при выполнении npm install.
  7. devDependencies: Аналогично dependencies, но здесь перечислены зависимости, которые используются только во время разработки, например, инструменты тестирования или сборки.
  8. engines: Этот раздел позволяет указать требуемую версию Node.js и npm для вашего проекта.
  9. author: Здесь можно указать автора проекта.
  10. license: Указывает лицензию, в рамках которой распространяется ваш проект.

 

npm-scripts

В файле package.json также есть свойство scripts. Его можно использовать для запуска инструментов командной строки, установленных в локальном контексте проекта.

Общие scripts, которые вы можете использовать — это:

  • npm test — для запуска тестов
  • npm build — для сборки вашего проекта
  • npm start — для локального запуска проекта.

 

Где посмотреть нужную версию Node.js и npm

Чтобы узнать, какая версия Node.js и npm, я рекомендую зайти в определенную ветку проекта superset

Для этого можно прям в github выбрать нужный вам тег:

и открыть файл superset/superset-frontend/package.json. В нем найдете в 99% случаях всю нужную информацию, которая пригодится при сборке проекта.

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

 

Установка необходимой версии Node.js и npm с помощью apt

Для начала рассмотрим кейс, когда на операционной системе стоит другая версия Node.js и npm.

Для начала нам нужно удалить нашу версию, почистить все оставшиеся файлы.

Проверяем текущие версии Node.js и npm:

node --version

npm --version

 

Результат:

 

Удаление текущих версий node.js и npm

sudo apt-get remove nodejs
sudo apt-get remove npm
which node
>>> пусто
# при необходимости запускаем
# sudo rm /usr/local/bin/node
ls /etc/apt/sources.list.d
>>> nodesource.list
sudo rm /etc/apt/sources.list.d/nodesource.list
which npm
>>> пусто
# при необходимости запускаем
# sudo rm /usr/local/bin/npm

 

Выполнение указанных шагов мне помогало удалить текущие версии node.js и npm.

 

Установка необходимой версии node.js и npm

Для начала поймем какую точно версию мы хотим установить. В package.json указано для версии superset 2.1.1:

"engines": {
"node": "^16.9.1",
"npm": "^7.5.4 || ^8.1.2"
},

 

Знак «^» означает, что можно использовать любую версию Node.js, начиная с указанной (в данном случае — 16.9.1), но не старше, чем следующая основная версия.

 

Инструкция по установке node.js через apt:

https://github.com/nodesource/distributions/blob/master/README.md

Далее выполняем команды:

# Download and import the Nodesource GPG key
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
# Create deb repository
NODE_MAJOR=16
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
# Run Update and Install
sudo apt-get update
sudo apt-get install nodejs -y

 

Проверяем версии node и npm:

superset@server:~$ node -v
v16.20.2

superset@server:~$ npm -v
8.19.4

 

Как установить конкретную версию npm?

Если вдруг при разработке вы получаете ошибки, то можете понизить версию npm.

sudo npm install -g npm@7

 

Команда sudo npm install -g npm@7 выполняет следующие действия:

  1. npm — это менеджер пакетов для JavaScript, который используется для установки и управления зависимостями в проектах.
  2. install — это команда npm, которая используется для установки пакетов. В данном случае, мы собираемся установить пакет npm@7.
  3. -g (или --global) — это флаг, указывающий, что пакет npm должен быть установлен глобально на вашей системе, а не только в текущем проекте. Глобальная установка позволяет использовать npm@7 из командной строки в любом месте на вашей системе.
  4. npm@7 — это версия npm, которую вы собираетесь установить. В данном случае, вы устанавливаете версию 7 npm.

 

Установка node и npm через NVM

Node Version Manager (NVM) — это инструмент для управления версиями Node на вашем устройстве.

Вместо использования apt для установки и удаления версий Node для разных проектов вы можете использовать nvm, который поможет вам эффективно управлять версиями Node для каждого проекта.

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

  1. curl: sudo apt-get install curl
  2. NVM: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
  3. Убедитесь, что NVM установлен (например, запросив доступный список версий node): nvm list-remote
  4. Затем вы можете установить node 16 с помощью: nvm install v16.14.0
  5. Проверьте установленую версию node: node --version

 

Используйте NVM (Node Version Manager) для установки и использования любых других версий node, которые вы хотите.

 

Источник:  Блог superset-bi

Узнать стоимость решенияЗапросить видео презентацию

← Предыдущая статья
Superset 3.0: Talisman security. CSP требования. Что это?
Следующая статья →
Описание package.json для Apache Superset

Решения

Анализировать ФинансыУвеличивайте ПродажиОптимальный Склад и ЛогистикаМаркетинговые Метрики

Клиенты
  • ООО «Ай Пи Ти Групп» (IPT Group) — многопрофильный консалтинговый холдинг, специализирующийся на юридическом и финансовом сопровождении бизнеса. IPT Group занимает высокие позиции в профессиональных рейтингах, входит в ТОП-30 лучших юридических компаний России по версии «Право.ru-300», Global Law Experts и др.

  • ПАО «Банк Уралсиб» (Публичное акционерное общество «Банк Уралсиб») — российский коммерческий банк. В 2020 году входил в топ-20 банков РФ по размеру активов (рэнкинг рейтингового агентства Эксперт РА), в 2021 году — в топ-25 крупнейших банков страны по расчётам агрегатора Банки.ру

  • Ситилинк

    Электронный дискаунтер «Ситилинк» — один из крупнейших онлайн‑ритейлеров России (3‑е место по объему онлайн‑продаж в рейтинге Data Insight и Ruward 2016 года E‑commerce Index TOP‑100, 8 место в рейтинге Forbes «20 самых дорогих компаний Рунета — 2017»). На рынке работает 9 лет.

    В ассортименте дискаунтера более 50 000 наименований компьютерной цифровой, бытовой и садовой техники, офисной мебели и других товарных категорий. Более 700 мировых брендов в портфеле. Около 4 000 сотрудников по всей России

  • АО «Новосибирскэнергосбыт» является единственным гарантирующим поставщиком электроэнергии на территории г. Новосибирска и Новосибирской области. Предприятие отвечает за электроснабжение клиентов, закупая электроэнергию на оптовом рынке, регулируя поставку электроэнергии через договорные отношения с сетевыми организациями.

  • Решения
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Энергетика
    • Фармацевтика
  • Услуги
    • Переход на отечественные BI и DWH
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Техническая поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений
    • Выделенная команда
    • Настойка и поддержка баз данных
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Платформы
    • FineBI
    • FineReport
    • FineDataLink
    • Коннекторы данных из 1С в BI
    • Airflow + NiFi
    • Visiology
    • Luxms BI
    • Modus BI
    • PIX BI
    • Arenadata
    • ClickHouse
    • Greenplum
    • Postgres Professional
    • Open-source BI: Superset/Metabase
    • Loginom
    • Yandex.DataLens
    • AI / Исскуственный интеллект
    • Optimacros
    • Шины данных
  • Курсы
    • Учебный курс Информационная грамотность
    • Учебный курс для бизнес-аналитиков
    • Учебный курс для системных аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по FineReport
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по ClickHouse
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
    • Учебный курс по dbt
  • Функциональные решения
    • Создание Data Lake
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и прогнозная аналитика
    • Геоаналитика
    • Цепочки поставок (SCM)
    • AutoML
    • Process Mining
    • Сквозная аналитика
  • Компания
    • О нас
    • Руководство
    • Новости
    • Клиенты
    • Скачать
    • Контакты
    • Политика конфиденциальности
RutubeVkontakteLinkedInYouTube
ООО "Би Ай Консалт",
ИНН: 7811437757,
ОГРН: 1097847154184
199178, Россия,
Санкт-Петербург,
6-ая линия В.О., Д. 63, 4 этаж
Тел: +7 (812) 334-08-01
Тел: +7 (499) 608-13-06
E-mail: info@biconsult.ru

 

 

 

 

 

×

Пользуясь сайтом, вы соглашаетесь с использованием cookies и политикой конфиденциальности.