Коротко о главном
Node.js удобен для API, инструментов командной строки и фронтенд-сборки. Пакетный менеджер npm входит в стандартную поставку и описывает проект в package.json. В статье разберём установку, создание приложения, зависимости и воспроизводимую установку в CI. Примеры используют обычный Linux-терминал и не требуют глобальных фреймворков.
Единая среда JavaScript упрощает разработку клиента и сервера. npm даёт доступ к огромной экосистеме библиотек и готовых скриптов. package-lock.json фиксирует дерево зависимостей для повторяемых сборок. Node.js также часто используется для локальных инструментов и автоматизации.
Этот материал — быстрый старт по nodejs. За 15 минут вы получите рабочую конфигурацию и поймёте, куда смотреть дальше.
Установка
В Debian, Ubuntu и Linux Mint используется пакетный менеджер APT:
sudo apt install nodejs npm
В Fedora и RHEL-совместимых системах пакет ставится через DNF:
sudo dnf install nodejs npm
В Arch Linux и производных пакет доступен в официальных репозиториях:
sudo pacman -S nodejs npm
Минимальная настройка
1. Проверьте Node.js и npm
Убедитесь, что установлены обе команды и их версии совместимы. Для новых проектов выбирайте LTS-ветку Node.js. Версия npm влияет на поддержку команд npm pkg и npm ci.
node --version
npm --version
2. Создайте проект
npm init -y создаёт package.json с настройками по умолчанию. Команда npm pkg set позволяет изменить поле без ручного редактирования. Значение type=module включает современный синтаксис import.
mkdir demo-app && cd demo-app
npm init -y
npm pkg set type=module
3. Установите зависимости
Обычная зависимость нужна приложению во время работы. Флаг —save-dev добавляет пакет только для разработки и проверок. npm создаёт package-lock.json с точными версиями.
npm install express
npm install --save-dev eslint
4. Запустите скрипт проекта
Скрипты из package.json запускаются через npm run. Короткая форма npm start работает для стандартного скрипта start. Создайте простой index.js, чтобы проверить настройку.
printf 'console.log("ok")\n' > index.js
npm start
Минимальный конфиг
Начните с минимального рабочего варианта. Не копируйте большой конфиг целиком: добавляйте параметры по одному и проверяйте результат после каждого изменения.
{
"name": "demo-app",
"version": "1.0.0",
"private": true,
"type": "module",
"scripts": {
"start": "node index.js",
"test": "node --test"
}
}
Шпаргалка по командам
- Проверьте Node.js и npm: node —version
- Создайте проект: mkdir demo-app && cd demo-app
- Установите зависимости: npm install express
- Запустите скрипт проекта: printf ‘console.log(«ok»)\n’ > index.js
- Подготовьте воспроизводимую установку: npm ci
Практические советы
Эти рекомендации проверены на повседневных задачах. Начните с тех, которые закрывают вашу текущую боль, а не со всего списка сразу.
Совет 1. Выбирайте LTS-версию Node.js для рабочих проектов и проверяйте срок по
Выбирайте LTS-версию Node.js для рабочих проектов и проверяйте срок поддержки.
Совет 2. Коммитьте package-lock.json: без него npm ci не сможет воспроизвести у
Коммитьте package-lock.json: без него npm ci не сможет воспроизвести установку.
Совет 3. Используйте npm ci в CI, а npm install — при активной разработке завис
Используйте npm ci в CI, а npm install — при активной разработке зависимостей.
Совет 4. Добавляйте node_modules и .env в .gitignore, чтобы не хранить зависимо
Добавляйте node_modules и .env в .gitignore, чтобы не хранить зависимости и секреты в репозитории.
Что дальше
Быстрый старт не означает «настроить навсегда». Когда базовый сценарий заработает, вернитесь к конфигурации и проверьте, что она переживёт перезагрузку: файлы на месте, служба включена в автозагрузку, путь к данным не зависит от текущего каталога.
Дальше имеет смысл разобраться с резервной копией и журналами nodejs. Это не самая заметная часть работы, но именно она превращает эксперимент в инструмент, которым можно пользоваться каждый день.
Чек-лист
- Команды из шпаргалки выполняются без ошибок после перезагрузки.
- Пароли и токены не хранятся в истории команд и конфигурации в открытом виде.
- Понятно, где смотреть логи и что считать признаком проблемы.
- Есть копия конфигурации, которую можно восстановить.
Короткие ответы на частые вопросы
Нужно ли запускать всё от root?
Нет. Права root нужны для установки пакетов и изменения системных файлов, но сама программа и её данные должны принадлежать отдельному пользователю. Постоянная работа под root превращает любую ошибку в критическую.
Что делать, если после перезагрузки ничего не работает?
Сначала проверьте, включена ли служба в автозагрузку и не изменился ли путь к конфигурации. Посмотрите журнал текущей загрузки: он почти всегда указывает на отсутствующий файл, неверные права или занятый порт.
Как обновлять без сюрпризов?
Читайте примечания к версии, делайте резервную копию конфигурации и проверяйте обновление на тестовом стенде. Не обновляйтесь в пятницу вечером перед выходными: время на откат должно быть частью плана.
Итог
Этого достаточно, чтобы начать. Дальше углубляйтесь по мере задач: документация nodejs станет понятнее, когда появится реальный сценарий использования.