Frage

Ich habe eine Website mit Ruby on Rails zu schaffen, und es wird durch einen Freund bewirten. Er hat den Raum und die Fähigkeit, den Server zu hosten, und ich habe ein System zu sein ein dedizierter Server zu widmen. Und dies ist mein erster Versuch einer Rails-Website, sowie selbst Hosting mit einem Freund.

Ich werde die Formatierung und den Server heute und morgen mit der folgenden Software-Konfiguration vorbereiten:

  • Apache2
  • Phusion Passagier (aka, mod_rails)
  • Ruby-Enterprise Edition
  • MySQL 5

Ich habe eine Reihe von Fragen, und ich entschuldige mich für ihre Komplexität. Ich habe nicht einen Leitfaden für diese Konfiguration noch, und da neu zu Rails finde ich habe nicht die Erfahrung, meinen Weg durch die noch zu navigieren.

Welche Version von Linux am meisten für diese Konfiguration empfohlen wird?

Ich habe geplant, auf CentOS einzusetzen. Der Nachteil ist, dass ich seit meinen frühen Tagen ein Windows-Nutzer waren, und habe nur Linux als Webhost verwendet und sehr wenige Entwicklung Befehle (wie CVS). So mein Wissen von Linux ist eher klein, und meine Erfahrung kleiner. Wenn ich in irgendwelchen Einsatz Tücken laufen, technischen dank der Distribution von Linux, oder etwas dergleichen ... Ich hing völlig aus, um zu trocknen.

Dazu gehören Dinge wie etwas Gebäude aus dem Quellcode.

Wie richte ich Capistrano auf meinem Server für Remote-Installation auf?

Ich weiß, dass dies ein Oxymoron ist (Capistrano ist clientseitige, nicht-Server-Seite), aber ich weiß nicht, was es auf dem Server benötigt. Ist es FTP benötigen? SFTP? SSL? SSH? Was?

Was muss ich auf meinem Server zu konfigurieren, und wie kann ich konfigurieren, Capistrano zu ermöglichen reibungslos laufen?

Auch Wie verweise ich Capistrano auf die Tatsache, dass mein SCM auf localhost und ist von Mercurial? (I verwendet TortoiseMg.) Ich SVN umwandeln könnte und wahrscheinlich einen Repository auf dem Server eingerichtet, aber ich bin mir nicht ganz sicher, wie das zu tun.

Was ist der größte Haken Sie achten, wenn sie von einem lokalen Host Entwicklung bereitstellen, um die Bereitstellung auf einem ganz anderen OS?

Sonstiges

Warum implementieren dann nicht auf Windows Weil ich die Rechnung bin Fußzeilen, und ich will nicht für eine andere Kopie von XP zahlen oder vielleicht 2000?; Ich lehne es ab Vista zu verwenden. Außerdem Linux ist viel sicherer als Windows für eine Server-Umgebung.

Warum die vorhandenen Führungen nicht lesen ich bin?; dies ist meine erste Website mit Ruby on Rails ist mein Budget in weniger als zweistelliger Bereich jetzt, und ich versuche, meinen Horizont zu erweitern, indem die Serverkonfiguration und die Remote-Bereitstellung zu tun (für die Weiterentwicklung der Website) durch mich selber. Ich habe für meine PHP-Websites auf Hosts in der Vergangenheit verlassen, aber sie sind viel homogener in ihrer Konfiguration. Ruby-Server sind teuer, unerschwinglich so für mich, und seine Konfiguration zu lernen, würde nicht zu wissen, verletzt.

War es hilfreich?

Lösung

Welche Version von Linux am meisten für diese Konfiguration empfohlen wird?

Jede der Verteilungen wird funktionieren, solange sie Apache2 laufen kann (die fast alle von ihnen ist) und Sie können Passagier installieren (zusammen mit Ruby und Rails). Ich persönlich CentOS verwenden und seine Paket Krippe zu finden sein lächerlich einfach zu bedienen ( yum ).

yum install -y httpd ruby
gem install rails passenger

Dann alles, was Sie tun müssen, ist eine wenig Konfiguration in /etc/httpd/conf/httpd.conf Passagier hinzuzufügen (nach der Datei für Passagier passenger-install-apache2-module installieren) und es zu einem Bereitstellungsordner .../app_name/current/public zeigen.

Da Sie Passagier verwenden, sollten Sie den Neustart Aufgabe außer Kraft setzen, damit es funktioniert.

config/deploy.rb

namespace :deploy do
  desc "Restart Application"
  task :restart, :roles => :app do
    run "touch #{current_path}/tmp/restart.txt"
  end
end

Wie kann ich Capistrano auf meinem Server für Remote-Installation auf?

Alle braucht Capistrano ist SSH-Zugang mit ausreichenden Berechtigungen zu implementieren, migrieren, App-Server neu starten, usw. Folgen Sie einfach dem Capistrano Webseite und Sie werden in kürzester Zeit in Betrieb genommen werden .

Capistrano Zugriff auf Ihre SCM benötigt, müssen Sie, damit es zu Ihrem Rechner verbinden. Alle Capistrano tut, ist der Code in eine Freigabeordner und bewegt den symbolischen Link von der alten Version Kasse und startet die App-Server.

Was ist der größte Haken Sie achten, wenn sie von einem lokalen Host Entwicklung bereitstellen, um die Bereitstellung auf einem ganz anderen OS?

Der größte Haken ist mit Migrationen, Test, Test, Test, und testet sie einige mehr. Ein Fehler in der Anwendung ist einfach zu beheben und erneut bereitstellen, sondern um einen Fehler in der Migration könnte einen großen Schmerz in dem Arsch mit der Möglichkeit von Datenverlust enden.

Andere Tipps

Ich habe die Artikel gefunden bei Slicehost.com (a VPS-Hosting-Unternehmen) geschrieben sein ziemlich nützlich.

Die vollständige Liste der Artikel sind unter: http://articles.slicehost.com/sitemap . Sie werden eine Reihe von Artikeln finden es im Zusammenhang mit der Produktion Einsatz eines Ruby on Rails-Anwendung.

Ich empfehle Ubuntu-Server und Abschr , da es eine Tonne Sysadmin Rezepte bietet, die Dinge selbst machen einfacher.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top