Как использовать бесплатный частный сервер npm с Verdaccio

Вступление

Как вы знаете, npm - это менеджер пакетов для языка программирования JavaScript, выпущенный в 2010 году. Для выполнения кода JavaScript вне браузера вам понадобится Node.js в качестве среды выполнения JavaScript. Когда вы устанавливаете Node.js, он также устанавливает менеджер пакетов npm. Диспетчер npm позволяет загружать и управлять зависимостями пакетов Node.js.

Примечание. Пряжа - альтернатива npm, поэтому обязательно ознакомьтесь с ней.

Определения

  • npm (диспетчер пакетов узла): - это диспетчер пакетов для языка программирования JavaScript.
  • npm Registry: - онлайн-база данных общедоступных и платных частных пакетов. Доступ к реестру осуществляется через клиент, а доступные пакеты можно просматривать и искать через веб-сайт npm. (Тот же термин, когда мы используем частный сервер npm)
  • Node.js: - это кроссплатформенная среда выполнения JavaScript с открытым исходным кодом, которая выполняет код JavaScript вне браузера. Node.js позволяет разработчикам использовать JavaScript для написания инструментов командной строки, а для сценариев на стороне сервера - сценариев на стороне сервера для создания динамического содержимого веб-страницы перед отправкой страницы в веб-браузер пользователя.
  • Verdaccio: - это легкий частный реестр прокси npm, созданный на Node.js. И он поставляется из коробки с собственной крошечной базой данных и возможностью проксировать другие реестры (например, npmjs.org), попутно кэшируя загруженные модули. См. подробнее…

Источник: Wikipedia.org / Verdaccio.org

Деловая потребность

В январе 2017 года в реестре npm было опубликовано более 350 000 пакетов, что день ото дня увеличивает потребности бизнеса, сохраняя модульность, возможность повторного использования кода и SoC систем. Поэтому очень важно управлять кодом, библиотеками или компонентами. Как вы уже знаете, npmjs.org обеспечивает управление компонентами с помощью диспетчера пакетов npm. Он имеет возможность публиковать и устанавливать пакеты как публично, так и конфиденциально.

Даже если ваша организация хочет обмениваться пакетами внутри организации в частном порядке. npm.org облегчает, но не бесплатно для частных пакетов. Если ваша организация планирует использовать лицензию MIT, возможность совместного использования пакетов внутри организации будет доступна бесплатно. Соответственно, лучшим решением для вашей организации является использование частного сервера npm.

Решение

На рынке можно найти несколько частных серверов npm для управления пакетами. Пока что лучшим решением является Verdaccio. Поскольку Verdaccio был разветвлен на основе Sinopia и на 100% обратно совместим и поддерживает Docker для развертываний, а также плагины.

Альтернативы: NPM-Register, DIY NPM, Git, Sinopia и т. Д.

Представляем Вердаччо

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

Что может Вердаччо?

  • Используйте частные пакеты
  • Кешировать реестр npmjs.org
  • Свяжите несколько реестров
  • Переопределить общедоступные пакеты
  • E2E тестирование
  • Поддержка Docker и Kubernetes
  • Совместимость с пряжей, npm и pnpm

Начало работы с Вердаччо

Шаг 1 (предварительные условия)

1. Установите Node.js (Скачать и установить: - Ссылка)

Примечание: npm поставляется с установочным пакетом Node.js

2. Обновите npm (при необходимости)

npm i -g npm

Шаг 2 (Установите Verdaccio)

npm install -g verdaccio

Если есть ошибки,

○ Загрузите и установите последнюю версию Python. ("Ссылка")

OR

○ Если у вас не установлена ​​Visual Studio,

npm install --global --production windows-build-tools
npm install node-gyp

Шаг 3 (Запустите частный сервер npm Verdaccio)

verdaccio

Примечание. Теперь вы можете получить доступ к браузеру реестра, перейдя по адресу http: // localhost: 4873 по умолчанию.

Шаг 4 (Создайте нового пользователя и войдите в систему)

npm adduser --registry http://localhost:4873

Примечание: при добавлении пользователя нет необходимости повторно входить в систему.

Шаг 5 (Создание пакета)

○ Создайте необходимые файлы («package.json», «index.js», папка пакета).

○ Создайте свой собственный пакет (добавьте информацию о пакете, библиотеки и файлы пакетов)

Шаг 6 (опубликуйте пакет на вашем частном сервере npm)

  • После создания пакета вы можете опубликовать его в частном реестре npm, используя команду ниже:
npm publish --registry http://localhost:4873

Примечание. Вы можете проверить опубликованный пакет в браузере реестра, перейдя по адресу http: // localhost: 4873.

Шаг 7 (разрешение пакета с частного сервера npm)

  • Теперь ту же процедуру, которую вы выполняете для разрешения пакета с npm.org, вы можете разрешить с вашего частного сервера npm.
npm install <your-package-name> --registry http://localhost:4873

Заключение

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