Was ist der einfachste Weg, um einen Edelstein herunterzuladen, ohne Rubygems zu installieren?

17122
Daniel

Ich möchte einen Edelstein herunterladen, ohne alle Edelsteine ​​für einen bestimmten Edelstein zu installieren.

Speziell für die Rails 3 gem. Es hat eine Menge Abhängigkeiten, und ich muss es auf einem geschlossenen Server installieren, der derzeit keine Ruby / Rake / Rails-Software hat.

Jeder Hinweis wäre großartig, da das Klicken durch rubygems.org mühsam ist.

Okay, lass mich das ein bisschen klären. Was ich möchte, ist, dass dies funktioniert:

gem install Schienen - nur -download

Das würde meine Probleme lösen, da ich dann die entstandenen Edelsteine ​​auf eine Disc brennen und auf meinen Server verschieben konnte, der keinen Internetzugang hat.

6
Nicht sicher, dass dies möglich ist. Deshalb werden sie Abhängigkeiten genannt. Sie hängen von anderen Dingen ab, die Sie bearbeiten müssen. soandos vor 13 Jahren 0

4 Antworten auf die Frage

13
pglombardo

So laden Sie einen einzelnen Edelstein herunter (Beispiel: Lauthals-Edelstein):

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

So laden Sie alle Edelsteine ​​herunter, die Ihre Rails 3-App beim Ausführen benötigt:

bundle package 

Dadurch werden alle Edelsteine ​​(und ihre Abhängigkeiten) heruntergeladen und in den Anbieter / Cache gestellt (ohne sie zu installieren).

Sie können dann alle Edelsteine ​​im Hersteller / Cache auf eine CD brennen und sie ohne Netzzugriff auf den anderen Server bringen.

Ein bisschen zu spät um es zu benutzen, aber das ist die Antwort, nach der ich gesucht habe. Vielen Dank für die Veröffentlichung. Daniel vor 12 Jahren 0
Sie müssen `--no-install` angeben, um das Paket zusammenzufassen, um die Installation zu überspringen. xoryves vor 7 Jahren 2
1
Daniel

Well, I hate to answer my own question but I think this is the most likely to be the solution for my question.

- 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. 

The location of those gem cached files is very useful. If I had numerous gem's on my networked machine and didn't want to transport all the gems I would have used

> bundle list 

to show the application specific gems needed.

-daniel

1
jtimberman

Ich würde einen lokalen RubyGems-Server mit allen für die Anwendung erforderlichen Gems erstellen, einschließlich Rails und seinen Abhängigkeiten.

Basisdokumentation hier:

Dieser Blogbeitrag zeigt, wie Sie einen internen Server einrichten, an den Sie Gems zur automatischen Indizierung senden können:

0
Xanny

Leider können Sie das Abhängigkeitsproblem nicht umgehen. Sie werden aus einem bestimmten Grund benötigt; Der Versuch, Rails ohne erforderliche Abhängigkeiten zu installieren, wird zu vielen Problemen führen, wenn Rails überhaupt läuft.

Sie haben nicht genau angegeben, was Sie mit geschlossen meinen. Wenn Sie "geschlossen wie in" meinen, können Sie keine systemweite Software installieren. Schauen Sie sich RVM an. Hierbei handelt es sich um Software, mit der Sie eine eigenständige Ruby-Umgebung erstellen können. Möglicherweise können Sie dies auch auf einem anderen Server einrichten und verschieben, wenn der Server keine Verbindung zum Internet hat. Schau es dir an und schau, ob dir das hilft.

Wenn ich die Gems nicht manuell herunterladen kann, muss ich wahrscheinlich diese Methode verwenden: Ich verwende eine Linux-VM und erstelle ein komplettes Installationspaket. Daniel vor 13 Jahren 0