RVM - есть ли способ простой автономной установки? - PullRequest
3 голосов
/ 27 марта 2011

Я хотел бы установить RVM на автономном компьютере - я могу вручную передать любой необходимый файл, но подключение к Интернету будет невозможно. Отсутствие подключения к сети приводит к сбою RVM при попытке загрузить исходные файлы для ruby ​​или других зависимостей (zlib и т. Д.).

Я ищу способ указать RVM на местоположение исходной папки ruby, например, что-то вроде rvm install 1.8.7 --source=/path/to/ruby-1.8.7-p330/ или любых других зависимостей. Я просмотрел документы rvm, но либо что-то пропустил, либо его там нет. Любые другие предложения относительно того, как выполнить эту установку, также приветствуются. спасибо.

Ответы [ 4 ]

8 голосов
/ 05 апреля 2011

Когда rvm загружает версию ruby, она сохраняет ее в .rvm / archives.Таким образом, вы можете поместить в этот каталог исходный файл ru.tar.bz2, и rvm будет использовать его вместо попытки его загрузки:

cp ruby-1.8.7-p330.tar.bz2 ~/.rvm/archives/
rvm install ruby-1.8.7
1 голос
/ 09 мая 2011

настроить второй компьютер (источник) с идентичной учетной записью пользователя и использовать этот компьютер для установки RVM, установки Ruby и всех необходимых Gems ...

Затем, после того, как вы установили все необходимое, используйте rsync, чтобы скопировать полный каталог ~ / .rvm с исходного компьютера на автономный компьютер. rsync твой друг!

Если у вас нет подключения к Интернету на автономном компьютере, используйте флэш-диск и скопируйте все с помощью 'cp -rp' на флэш-диск, а затем на автономный компьютер.

Примечание: имя учетной записи пользователя должно быть одинаковым на обеих машинах!

Если вы не используете одинаковые имена пользователей, позже вы столкнетесь с некоторыми странными сообщениями об ошибках ... RVM запоминает полный путь, где была установлена ​​версия gem или ruby ​​- он не использует переменную $ HOME , Если вы используете одну и ту же учетную запись пользователя на всех машинах для развертывания, вы не увидите этих ошибок.

0 голосов
/ 06 мая 2015

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

Ни одно из вышеуказанных решений не работает. RVM-автономный документ не помогает вообще. Независимо от того, что я делаю, он хочет установить из источника, который не помогает .

Как мне указать или заставить RVM использовать каталог глобальных архивов?

Может быть, вопрос в том, что, когда рубиновое дерево будет на месте, как сообщить RVM, что оно существует и может использоваться?

Нашел ответ.

Поместите двоичный файл в каталог архивов, как предложено на сайте rvm, затем mount it.:

cp rvm-binary-2.x.x-pyyy.tar.bz2 /usr/local/rvm/archives/ # or whichever
rvm mount -r /usr/local/rvm/archives/rvm-binary-2.x.x-pyyy.tar.bz2

Теперь вы можете получить такой вывод:

/usr/local/rvm/archives/bin-ruby-2.0.0-p598.tar.bz2 - #configure
ruby-2.0.0-p598 - #download
ruby-2.0.0-p598 - #validate archive
ruby-2.0.0-p598 - #extract
ruby-2.0.0-p598 - #validate binary
Libraries missing for ruby-2.0.0-p598: libyaml-0.so.2. Refer to your system manual for installing libraries

показывает, что вы на правильном пути. После установки yaml я повторяю rvm mount -r op и получаю:

/usr/local/rvm/archives/bin-ruby-2.0.0-p598.tar.bz2 - #configure
ruby-2.0.0-p598 - #download
ruby-2.0.0-p598 - #validate archive
ruby-2.0.0-p598 - #extract
ruby-2.0.0-p598 - #validate binary
ruby-2.0.0-p598 - #setup
ruby-2.0.0-p598 - #gemset created /usr/local/rvm/gems/ruby-2.0.0-p598@global
ruby-2.0.0-p598 - #importing gemset /usr/local/rvm/gemsets/global.gems..............................
ruby-2.0.0-p598 - #generating global wrappers........
ruby-2.0.0-p598 - #gemset created /usr/local/rvm/gems/ruby-2.0.0-p598
ruby-2.0.0-p598 - #importing gemsetfile /usr/local/rvm/gemsets/default.gems evaluated to empty gem list
ruby-2.0.0-p598 - #generating default wrappers........

После чего я проверяю: рвм использовать 2.0.0-p598

И мы готовы идти.

0 голосов
/ 21 августа 2013

Возможно, это не самое простое, но RVM предоставляет документацию для автономной установки: http://rvm.io/rvm/offline - также содержит информацию о том, как развернуть приложение в автономном режиме.

...