Antworten auf Ihre häufigsten Fragen

Wie kann ich eigene RubyGems installieren?
pdf print

In diesem Artikel möchten wir Ihnen eine kleine Einführung in die Installation und Nutzung eigener RubyGems auf Ihrem Virtual Server Managed, Dedicated Server Managed, WebServer Basic oder WebServer Premium geben.

Bei RubyGems handelt es sich um ein Paketsystem für die Programmiersprache Ruby, dass auf unseren Virtual Server Managed, Dedicated Server Managed, WebServer Basic und WebServer Premium bereits installiert ist. Sie können über RubyGems auf einfache Weise zusätzliche Funktionen für Ruby nachinstallieren. Allgemeine Informationen zu RubyGems finden Sie unter guides.rubygems.org.

Um RubyGems innerhalb Ihres eigenen Verzeichnis installieren zu können, ist es zunächst nötig, ein Installationsverzeichnis anzulegen und die Umgebungsvariable GEM_HOME darauf zeigen zu lassen. Gängig ist zum Beispiel das Verzeichnis ~/.gem/ hierfür zu nutzen. Aus Sicherheitsgründen ist es mit dem SSH-Benutzer wpxxxxxxx jedoch nicht möglich, in Ihrem Homeverzeichnis Dateien zu erstellen. Daher müssten Sie hierfür entweder den SSH-Benutzer ftpxxxxxxx verwenden oder mit sudo in dessen Kontext wechseln (sudo -u ftpxxxxxxx). Näheres erfahren Sie im FAQ-Artikel SSH-Zugang. Sie können dann in Ihrer ~/.profile und/oder ~/.bashrc die entsprechenden Umgebungsvariablen setzten bzw. erweitern, zum Beispiel durch folgenden Zeilen:

export GEM_HOME="$HOME/.gem"export PATH="$HOME/bin:$HOME/.gem/bin:$PATH"

Danach sollten Sie die ~/.profile-Datei per source .profile neu einlesen oder sich per SSH neu anmelden, damit diese Variablen korrekt gesetzt werden.

Eigene RubyGems können Sie nun über

gem install beispielgem

installieren. Abhängigkeiten werden dabei automatisch von gem behandelt. Um Ihre installierten RubyGems in einem Ruby-Skript nutzen zu können, geben Sie den GEM_PATH auf folgende Weise im Skript an:

ENV['GEM_PATH'] = '/is/htdocs/wp1234567_ABCDEFGHI/.gem'

Als Pfad verwenden Sie hier den Pfad Ihres HOME-Verzeichnisses.

Beachten Sie bitte auch, dass zwar die Installation von RubyGems möglich ist, Ruby aber nur auf der Kommandozeile und per CGI genutzt werden kann. Spezielle Ruby-Server, wie sie zum Beispiel Ruby on Rails benötigt, unterstützt wir nicht. Ruby-Anwendungen, die Rack nutzen, können unter Umständen durch einen geeigneten CGI-Dispatcher genutzt werden.

| Achtung |
Es ist nur die Installation von RubyGems möglich, die in reinem Ruby geschrieben sind. Sogenannte "native Erweiterungen" benötigen einen C-Compiler und können daher nicht installiert werden. Die Erweiterungen json und rmagick haben wir auf dem System außerhalb des RubyGem-Mechanismus bereits vorinstalliert. Wenn Sie ein RubyGem installieren möchten, dass diese benötigt, können Sie die Prüfung der Paketabhängigkeiten mit dem Kommandozeilenschalter --force überspringen.  


otto.friedrich@hosteurope.de xanthippe.ypsilante@hosteurope.de hercules.ikarus@hosteurope.de