Взаимозависимость от Ruby gem от автономного сервера

У меня есть сервер, который полностью отключен от Интернета (по некоторым странным причинам безопасности).

Как я могу использовать зависимости Ruby для разных драгоценных камней в этой среде? Он может работать с Bundler, но как установить Bundler с помощью gem без подключения к Интернету?

Ответ 1

Вы можете загрузить bundler как файл .gem из rubygems и установить его на сервере с помощью

gem install /path/to/bundler.gem

Затем вы можете упаковать все драгоценные камни, необходимые для вашего приложения, в каталог ./vendor/cache с помощью

bundle package

Если теперь вы развернете свое приложение (вместе с ./vendor/cache) на сервере и запустите

bundle install --local

bundler не перейдет к rubygems, а вместо этого установит все драгоценные камни из каталога ./vendor/cache.

Подробнее см. bundler-package docs.