Какой самый простой способ скачать гем без установки rubygems?

17052
Daniel

Я хотел бы загрузить драгоценный камень, не устанавливая все необходимые драгоценные камни для данного драгоценного камня.

Специально для Rails 3 гем. У него много зависимостей, и мне нужно установить его на закрытый сервер, на котором в настоящее время нет программного обеспечения ruby ​​/ rake / rails.

Любые подсказки были бы хороши, так как переход по rubygems.org утомителен.

хорошо, позвольте мне немного уточнить это. Что бы я хотел, чтобы это работало:

gem install rails - только для скачивания

это решило бы мои проблемы, так как тогда я мог бы записать полученные драгоценные камни на диск и перенести их на мой сервер, который не имеет доступа в Интернет.

6
Не уверен, что это возможно. Вот почему они называются зависимостями. Они зависят от других вещей, с которыми вам приходится работать. soandos 13 лет назад 0

4 ответа на вопрос

13
pglombardo

Чтобы загрузить один драгоценный камень, используйте (например, драгоценный камень с громкими пальцами):

gem fetch loudmouth Fetching: loudmouth-0.2.4.gem (100%) Downloaded loudmouth-0.2.4 

чтобы загрузить все гемы, от которых зависит ваше приложение Rails 3:

bundle package 

Это загрузит все гемы (и их зависимости) и поместит их в вендор / кеш (без их установки).

Затем вы можете записать все драгоценные камни вендора / кеша на компакт-диск и физически перенести его на другой сервер без сетевого доступа.

Слишком поздно для использования, но это ответ, который я искал. Спасибо за публикацию. Daniel 12 лет назад 0
Вам нужно указать `--no-install` для` bundle package`, чтобы пропустить установку. xoryves 7 лет назад 2
1
Daniel

Ну, я ненавижу отвечать на свой вопрос, но я думаю, что это, скорее всего, решение моего вопроса.

- find network enabled machine - install rails and all needed gems using RubyGems. - tar/zip /usr/lib[64]/ruby/gem/1.9.1/cache/*.gem - transport tar file to non-networked computer. 

Расположение этих кэшированных файлов очень полезно. Если бы у меня было много драгоценных камней на моей сетевой машине, и я не хотел перевозить все драгоценные камни, которые бы использовал

> bundle list 

чтобы показать приложение конкретные драгоценные камни, необходимые.

-daniel

1
jtimberman

Я бы создал локальный сервер RubyGems со всеми гемами, необходимыми для приложения, включая Rails и его зависимости.

Основная документация здесь:

В этой записи блога показано, как настроить внутренний сервер, на который вы можете отправлять Gems для автоматической индексации:

0
Xanny

К сожалению, вы не можете обойти проблему зависимости. Они нужны по причине; Попытка установить Rails без необходимых зависимостей может привести к множеству проблем, если Rails вообще работает.

Вы не указали, что именно вы подразумевали под закрытым. Если вы имеете в виду закрытое, поскольку вы не можете установить общесистемное программное обеспечение, взгляните на RVM - программное обеспечение, которое позволит вам создать автономную среду Ruby. Вы также можете избежать установки этого на другом сервере и перенести его, если у сервера нет подключения к Интернету. Посмотрите на это и посмотрите, поможет ли это вам.

Если я не могу вручную загрузить гем, тогда мне, вероятно, придется использовать этот метод: я буду использовать виртуальную машину Linux и создам полный пакет установки rails. Daniel 13 лет назад 0

Похожие вопросы