Endlich die Lösung

Dies ist ein Update meines vorherigen Posts.

Ich habe lange gebraucht, um mal wieder was am Server mit RubyOnRails zu machen. Nun habe ich eine Lösung gefunden, wie ich auf meinem Ubuntu 8.04 Server, Ruby on Rails zur Verfügung stellen kann.

Ich habe mir überlegt, dass es sinnvoll wäre das von strato zur Verfügung gestellte Plesk zu nutzen, um Kunden auf dem vServer zu verwalten (pro Kunde soll es vorerst eine Rails-Applikation geben). Ich habe dann überlegt, wie man Ruby on Rails da integrieren kann. Ich stieß auf einige Doku-Seiten bei parallels, die zeigen, wie man RoR aktivieren kann. Allerdings arbeitet diese Variante mit fastcgi. Ich wollte aber mit mongrel, nginx oder (am liebsten) Phusion Passenger arbeiten. Außerdem bekam ich bei der dort gezeigten Variante einige schlecht nachvollziehbare Fehlermeldungen, die ich nicht lösen konnte.

Es musste also eine andere Lösung her: Ich habe dann einen etwas älteren Artikel gefunden, der zeigt, wie man RoR in Plesk integrieren und dabei Phusion Passenger nutzen kann.

Meine Schritte im Überblick:

  1. Erstellen eines Kunden in Plesk
  2. Manuelle Installation einer relativ aktuellen Ruby-Version (1.8.7) auf dem Server
  3. Installation einer aktuellen rubygems-Version
  4. Installation aller nötigen gems (rails, builder, etc.)
  5. Befolgen der Anweisungen aus dem oben genannten Artikel (passenger gem installieren, passenger Installation starten, vHost.conf erstellen und DocumentRoot eintragen, den Schritt mit RubyEnterprise habe ich weggelassen)
  6. Hochladen der Applikation (über angelegten Kundenaccount) per ftp
  7. Apache evtl. neustarten, Applikation aufrufen

Einige Hinweise noch:

  • Neustart der Rails-Applikation per touch der Datei  /tmp/restart.txt
  • diese Variante macht nur eine Rails-Applikation pro Nutzer möglich, das wollte ich aber bewusst so, im Artikel oben sind aber Hinweise zu finden, wie man Subdomains nutzen kann