Home » Node.js — установка и удаление пакетов с помощью npm и Yarn
Node.js — установка и удаление пакетов с помощью npm и Yarn

Node.js — установка и удаление пакетов с помощью npm и Yarn

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

Как это работает? Кратко о пакетных менеджерах Node.js

Node.js — это не только движок для запуска JavaScript на сервере, но и огромная экосистема модулей. Чтобы не скачивать и не подключать всё вручную, придумали пакетные менеджеры. Самые известные — npm (Node Package Manager) и Yarn (от Facebook).

  • npm — идёт в комплекте с Node.js, официальный, самый распространённый.
  • Yarn — альтернатива от Facebook, появился из-за недовольства скоростью и стабильностью npm (особенно в начале).

Оба менеджера умеют:

  • Скачивать и устанавливать пакеты (библиотеки, утилиты, CLI-инструменты и т.д.)
  • Удалять ненужные пакеты
  • Обновлять зависимости
  • Хранить список зависимостей в package.json
  • Работать с приватными и публичными репозиториями

Всё это — must have для любого, кто настраивает сервер под Node.js. Без пакетного менеджера ты будешь вручную копировать файлы, следить за версиями, а это боль и страдания.

Как быстро и просто всё настроить?

Первое, что нужно — установить Node.js. Обычно это делается через пакетный менеджер твоей ОС или с официального сайта https://nodejs.org/. После установки у тебя уже будет npm.

Проверить версию:


node -v
npm -v

Если хочешь попробовать Yarn — ставь его глобально:


npm install -g yarn

или по инструкции с официального сайта: https://yarnpkg.com/getting-started/install

Инициализация проекта

Перед установкой пакетов обычно создают package.json — файл, где будут храниться все зависимости и настройки проекта.


npm init -y
# или
yarn init -y

Ключ -y — чтобы не отвечать на вопросы, всё по дефолту. Для серверных проектов этого достаточно.

Установка пакетов: npm vs Yarn

Вот тут начинается магия. Допустим, тебе нужен пакет express — популярный фреймворк для Node.js.

Действие npm Yarn
Установить пакет (локально) npm install express yarn add express
Установить пакет (глобально) npm install -g pm2 yarn global add pm2
Установить dev-зависимость npm install --save-dev nodemon yarn add --dev nodemon
Установить конкретную версию npm install [email protected] yarn add [email protected]

Всё просто: npm install = yarn add. Для глобальных пакетов добавляй -g или global. Для dev-зависимостей — --save-dev или --dev.

Удаление пакетов

Действие npm Yarn
Удалить пакет npm uninstall express yarn remove express
Удалить глобальный пакет npm uninstall -g pm2 yarn global remove pm2

После удаления пакет исчезает из node_modules и package.json. Всё чисто, красиво, без мусора.

Примеры, схемы, практические советы

Кейс 1: Быстрая установка всех зависимостей

Если ты клонировал проект с GitHub или получил архив, просто выполни:


npm install
# или
yarn install

Все зависимости подтянутся из package.json. Это удобно для CI/CD, автоматизации и быстрого деплоя на сервере.

Кейс 2: Обновление пакетов

Пакеты устаревают, появляются баги и уязвимости. Обновлять — важно!


npm update
# или
yarn upgrade

Для глобальных пакетов:


npm update -g
yarn global upgrade

Кейс 3: Чистка мусора

Иногда после удаления пакетов остаются лишние файлы. Для npm есть команда:


npm prune

Yarn сам следит за чистотой, но можно использовать:


yarn autoclean --init
yarn autoclean --force

Кейс 4: Работа с приватными пакетами

Если у тебя свой npm-репозиторий (например, Verdaccio), можно подключить его:


npm set registry https://your-private-registry.com/

Yarn тоже поддерживает приватные реестры через .npmrc или .yarnrc.

Кейс 5: Автоматизация через скрипты

В package.json можно прописывать свои команды:


"scripts": {
"start": "node index.js",
"dev": "nodemon index.js",
"deploy": "npm install && npm run build"
}

Запускать так:


npm run dev
yarn dev

Положительные и отрицательные кейсы

Кейс Что было не так Как правильно Рекомендация
Установка пакета без --save (npm <5) Пакет не попал в package.json, на сервере не установился Использовать npm install express --save (или просто npm install express в новых версиях) Проверяй package.json после установки
Удаление пакета вручную из node_modules Остались записи в package.json, конфликт версий Использовать npm uninstall или yarn remove Никогда не трогай node_modules руками
Глобальная установка пакетов для проекта Пакет не работает на сервере, где нет глобальной версии Устанавливать как локальную зависимость Глобально ставь только CLI-утилиты (pm2, nodemon и т.д.)
Смешивание npm и Yarn Конфликт lock-файлов, баги при деплое Использовать только один менеджер на проект Удаляй лишние package-lock.json или yarn.lock

npm vs Yarn: сравнение и статистика

Параметр npm Yarn
Скорость установки Средняя (npm 7+ стал быстрее) Быстрее (особенно на больших проектах)
Лок-файл package-lock.json yarn.lock
Работа с монорепозиториями Поддержка через workspaces (npm 7+) Отличная поддержка workspaces
Интерфейс команд Стандартный Более лаконичный
Поддержка Официальный, всегда актуален Активное сообщество, быстро внедряют фичи

На практике — для серверных задач разницы почти нет. Если проект уже на npm — оставайся на нём. Если нужна скорость и работа с монорепозиториями — попробуй Yarn.

Похожие решения и утилиты

  • pnpm — ещё один менеджер, экономит место за счёт жёстких ссылок. https://pnpm.io/
  • npx — запуск пакетов без установки (идёт в комплекте с npm 5.2+)
  • Verdaccio — приватный npm-реестр для локальной сети. https://verdaccio.org/

Интересные факты и нестандартные способы использования

  • Можно запускать Node.js-проекты прямо из GitHub без клонирования, используя npx:


npx github:username/repo

  • Yarn поддерживает Plug’n’Play — модули не копируются в node_modules, а подключаются напрямую. Это ускоряет запуск и экономит место.
  • npm и Yarn можно использовать для автоматизации не только JS-проектов, но и любых задач: деплой, бэкапы, миграции БД — всё через скрипты в package.json.
  • Можно создавать свои CLI-утилиты и распространять их через npm/yarn — удобно для автоматизации серверных задач.

Новые возможности для автоматизации и скриптов

  • Быстрое развёртывание окружения: npm ci или yarn install --frozen-lockfile — гарантирует идентичные зависимости на всех серверах.
  • Интеграция с CI/CD: установка, тесты, деплой — всё через npm/yarn-скрипты.
  • Мониторинг уязвимостей: npm audit и yarn audit — проверка зависимостей на наличие известных багов и дыр.
  • Работа с workspaces: удобно для микросервисов и монорепозиториев.

Выводы и рекомендации

Node.js без пакетного менеджера — как сервер без SSH: вроде работает, но управлять невозможно. npm и Yarn — это твои главные инструменты для установки, удаления и управления зависимостями. Они экономят время, делают проекты стабильнее и безопаснее, позволяют автоматизировать рутину и быстро масштабировать решения.

  • Для большинства серверных задач хватит стандартного npm.
  • Если нужна скорость, работа с монорепозиториями или хочется попробовать что-то новое — смело ставь Yarn.
  • Не смешивай менеджеры в одном проекте — это путь к хаосу.
  • Используй скрипты в package.json для автоматизации любых задач: от деплоя до бэкапов.
  • Следи за обновлениями, проверяй уязвимости, не держи мусор в зависимостях.

Если ты хочешь быстро развернуть свой сервер для Node.js — посмотри VPS или выделенный сервер на нашем блоге. Всё просто, надёжно и под твои задачи.

Удачи в автоматизации и пусть твои проекты всегда собираются с первого раза!


В этой статье собрана информация и материалы из различных интернет-источников. Мы признаем и ценим работу всех оригинальных авторов, издателей и веб-сайтов. Несмотря на то, что были приложены все усилия для надлежащего указания исходного материала, любая непреднамеренная оплошность или упущение не являются нарушением авторских прав. Все упомянутые товарные знаки, логотипы и изображения являются собственностью соответствующих владельцев. Если вы считаете, что какой-либо контент, использованный в этой статье, нарушает ваши авторские права, немедленно свяжитесь с нами для рассмотрения и принятия оперативных мер.

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

Leave a reply

Your email address will not be published. Required fields are marked