18 Veröffentlichen einer Rails-Applikation auf einem Server
Eine Rails-Applikation benötigt eine andere Webserver-Konfiguration als andere Anwendungen. Für das Installieren und Konfigurieren der Applikation auf einem Webserver werden wir das Tool Capistrano vorstellen.
Bevor Sie Ihre Web-Applikation veröffentlichen, benötigen Sie einen Webserver, auf dem neben Ruby und Rails auch die notwendige Serversoftware, wie z. B. Apache, Mongrel und ein Datenbanksystem installiert sein müssen.
Deployment
Die Installation eines Webservers wird meist nur einmal für einen Server durchgeführt. Die Installation der Rails-Applikation hingegen kann sehr häufig erfolgen. Der Vorgang, die Applikation auf dem Zielserver zu installieren und zu konfigurieren, wird Deployment genannt.
Capistrano
Anstatt jedes Mal mühselig die Applikation per FTP hochzuladen, werden wir das Deployment-Tool Capistrano einsetzen. Mit Capistrano ist es eine wahre Freude, eine Applikation effizient zu verwalten.
In diesem Kapitel wird Schritt für Schritt gezeigt, wie Sie Ihre Rails-Applikation veröffentlichen, angefangen von der Wahl des Providers bis hin zur Übertragung der Applikation auf den Server mittels Capistrano.
Folgende Themen werden behandelt:
- Wahl des Providers
- Einrichtung des Servers
- Konfiguration von Capistrano
- Deployment mit Capistrano
- Diverse Szenarien
18.1 Wahl des Providers 

Im Gegensatz zu PHP sind Hostingangebote für Rails selten. Daher verwenden die meisten Entwickler eigene (dedizierte) Server, was auch an den relativ niedrigen Preisen für dedizierte Server liegt. Diese Lösung setzt jedoch mindestens Grundkenntnisse in UNIX oder Linux voraus.
Inzwischen ist der Markt für dedizierte Server recht groß. Typischerweise gibt es zwei Arten von Mietangeboten:
- Root-Server:
Der Provider stellt Ihnen eine eigene Server-Hardware zur Verfügung. Sie bezahlen einen monatlichen Betrag, in dem die Hardware, der Stellplatz und die Stromversorgung inklusive sind. Das Trafficvolumen ist von Angebot zu Angebot sehr unterschiedlich.
- Virtueller Server:
Auf einem virtuellen Server teilen Sie sich mit mehreren Kunden einen Server. Aufgrund der eingesetzten Virtualisierungs-Software hat jeder Kunde einen abgeschlossenen Bereich mit eigenem Linux-Betriebssystem und eigenem Root-Zugang. Der Vorteil dieser Lösung ist der Preis. Jedoch sind der Hautpspeicher und die Performance meist sehr begrenzt.
Trafficvolumen und Hauptspeicher
Sie sollten bei der Wahl des Servers u. a. auf das enthaltene Trafficvolumen und die Größe des Hauptspeichers (mind. 1 GB) achten. Auch sollte Ihnen der Provider eine einfache Möglichkeit zur Verfügung stellen, den Server bei einer Fehlkonfiguration komplett neu einzurichten (Neuinstallation des Servers).
Subversion
Damit wir die Applikation mit Capistrano auf den Server übertragen können, sollte das Projekt in ein Subversion-Repository überführt werden. Deshalb zeigen wir Ihnen hier auch die Installation von Subversion und wie ein Projekt in das Subversion-Repository importiert wird.
Provider-Übersicht |
Auf der Website zum Buch ( http://www.railsbuch.de ) finden Sie eine Übersicht von Providern, die Root-Server oder virtuelle Server anbieten. Zusätzlich finden Sie hier auch Informationen zu Providern, die Subversion-Repositories anbieten. Für Studenten oder Open-Source-Projekte gibt es auch kostenlose Subversion-Repositories. |
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.