"Непрерывная интеграция"/развертывание приложения node.js для автономного сервера

107
11

Наш клиент имеет автономный сервер (доступен только изнутри частной сети), и нам нужно развернуть там приложение node.js (приложение состоит из экспресс-веб-сервера и некоторых рабочих и Postgres DB). У нас нет доступа к этому серверу, поэтому клиент будет готовить среду/установку приложения/выполнение обновлений самостоятельно. Поскольку сервер не имеет доступа к Интернету, все пакеты npm (зависимости) должны быть построены на нашей стороне и доставлены клиенту в виде пакета, который может быть легко установлен им. Мы также должны собрать несколько журналов и сохранить их на сервере.

Мой вопрос - как справиться с такой ситуацией? Сначала я подумал о докере - я мог просто предоставить изображение клиенту со всей средой, настроенной внутри - однако докеры, похоже, прекрасно работают только с регистрами/репозиториями и всеми "онлайн-материалами" - для обеспечения сырого изображения для клиента, которого я должен был бы отправить минимум 670MB каждый раз клиенту.

До сих пор в нашей компании мы использовали все в облаке (в основном на геройку) - веб-серверах, рабочих, базах данных, журналах и т.д., И было легко управлять таким стеком (плюс источник на github и автоматическое развертывание на travis)...

спросил(а) 2015-08-10T19:27:00+03:00 5 лет, 2 месяца назад
1
Решение
57

офлайн-НПМ

Вы можете сохранить все пакеты с помощью одной команды

npm install -g offline-npm

После успешного сохранения в автономном режиме

npm install [-g] <name>-<version>.tgz

ответил(а) 2015-08-10T19:52:00+03:00 5 лет, 2 месяца назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема