Installer ruby on rails sur fedora 11

logo rails ruby rubygems

Ceci est un cas d’école qui reproduit une situation rencontrée en prod. Comme toujours, à lire en entier avant de modifier votre système :)

Télécharger les sources ruby à la bonne version (1.8.7 mini pour le support de Rails) :
[bash]wget ftp://ftp.ruby-lang.org//pub/ruby/ruby-1.8.7-p334.tar.gz[/bash]

Décompresser :
[bash]tar xvzf ruby-1.8.7-p334.tar.gz[/bash]

Entrer dans le dossier :
[bash]cd ruby-1.8.7-p334[/bash]

Configurer :
[bash]./configure[/bash]

Compiler :
[bash]make[/bash]

tester :
[bash]make test[/bash]

installer :
[bash]make install[/bash]

Voilà, l’interpréteur RUBY est installé sur le système. On va maintenant installer « RubyGems », le gestionnaire de packages.

RubyGems est une plateforme gestionnaire de paquets pour Ruby (comme apt pour ubuntu ou yum pour fedora/centos/redhat).

Télécharger les sources à la dernière version :
[bash]wget http://production.cf.rubygems.org/rubygems/rubygems-1.6.0.tgz[/bash]

Décompresser :
[bash]tar xvzf rubygems-1.6.0.tgz[/bash]

Entrer dans le dossier :
[bash]cd rubygems-1.6.0[/bash]

On lance l’install en Ruby :
[bash]ruby setup.rb[/bash]

Gem est installé ! On continue et on install rails grâce à gem :
[bash]gem install rails –include-dependencies[/bash]
(si il y a une erreur sur la documentation de ri, on relance, si ça persiste on ignore, vous devez avoir le message « Successfully installed rails-3.0.5 »).

Rails est maintenant installé. On va s’occuper d’installer « Passenger », qui est le module apache permettant de publier les applications utilisant Rubyonrails (et de les interpréter par la même occasion!).

Nous allons utiliser gem tout juste installé pour paramétrer « passenger » :
[bash]gem install passenger[/bash]

Puis on allons installer le module apache « passenger » :
[bash]passenger-install-apache2-module[/bash]

Si il manque des éléments il suffit de suivre les instructions (j’ai fait un ctrl+c pour interrompre et installer les manquants, puis relancé) ! L’installateur vous guide et est extrêmement bien fait! Pour ma part j’ai du installer ces quelques packages manquants (ça peut être différent selon ce qui est présent ou non sur votre système) :
[bash]yum install gcc-c++ curl-devel zlib-devel httpd-devel apr-devel apr-util-devel[/bash]

Après ça, l’installateur m’indique de copier les lignes suivantes dans ma configuration apache :
[bash] LoadModule passenger_module /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.4/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.8/gems/passenger-3.0.4
PassengerRuby /usr/local/bin/ruby
[/bash]

J’ai donc créé un fichier rubyonrails.conf dans /etc/httpd/conf.d/ contenant ces lignes, et relancé apache.

Pour finir l’installateur me donne un exemple de configuration pour déployer une application rubyonrails :
[bash]
——————————————–
Deploying a Ruby on Rails application: an example

Suppose you have a Rails application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:

<VirtualHost *:80>
ServerName www.yourhost.com
DocumentRoot /somewhere/public # <– be sure to point to ‘public’!
<Directory /somewhere/public>
AllowOverride all # <– relax Apache security settings
Options -MultiViews # <– MultiViews must be turned off
</Directory>
</VirtualHost>
[/bash]

C’est clair et net, rien à dire, votre installation est terminée, vous pouvez maintenant déployer une application !
Évidemment vous l’aurez compris, j’avais déjà ici une installation de apache 2 fonctionnelle (LAMP pour être exact). Sur ce type d’installation vous pouvez vérifier la prise en charge du module « passenger » en créant une fichier php dans un site géré par votre serveur apache, contenant la commande phpinfo.
[bash]
<?php
phpinfo();
?>
[/bash]

En appelant la page php qui contient ce code, dans la rubrique « Loaded Modules » de « apache2handler » vous devriez trouver « mod_passenger ».

Sources :
http://www.ruby-lang.org/fr/
http://rubyonrails.org/download
http://rubygems.org/
http://yken.org/2008/10/18/ruby-rails-and-httpd-on-fedora-8/
http://www.modrails.com/

Loading

Tags: , , , , , , ,

jeudi, mars 3rd, 2011 GNU - Linux, Innovation, Reseau, Technologie

Ajouter un commentaire

Not f'd — you won't find me on Facebook
mars 2011
L M M J V S D
 123456
78910111213
14151617181920
21222324252627
28293031  
 

 
Suivez moi sur twitter - follow me on twitter
 
Follow on LinkedIn
[FSF Associate Member]
 
Free Software, Free Society
VIRTUALISATION :
Compacter une image virtualbox VDI
Bon petit tutoriel esxi
Marche d'appliances vmware
Installer ESXi sur un disque IDE
Installer ESXi 3.5 sur un disque USB
Installer proxmox avec DRBD et migration / réplication à chaud
Installer OSSEC avec VMware
Information sur le VDI
SECURITE - FIREWALL :
Ouvrir des ports dynamiquement iptables - knockd
Autre tres bon tuto knockd
Docs Arp poisoning - Anglais
Metasploit test de pénétration
Zone H - sites piratés en temps réel
Blog invisible things
Tips protection sécurité wordpress
Pfsense - distribution firewall opensource - adsl internet failover
Iproute 2 mini how to - linux advanced routing
ClearOS - la passerelle sécuritaire lan - wan
HAUTE DISPONIBILITE :
CDN - Accélération de la distribution de données
drbd iscsi ocfs2 dm multipath tutoriel
Load balancing LVS
Load balancing opensource list
HA-Proxy :
HAproxy - http load balancer
Simple tutoriel HAproxy
HAproxy - debian tutoriel
Centos - Ip failover
Configuratoin DM-Multipath Redhat
VMware Doubletake - continuité
Quelques liens sur la réplication MySQL : Manuel MySQL, chapitre sur la réplication
Manuel MySQL, Tutoriel clair sur la mise en place
Autre tuto sur la mise en place de la réplication MySQL
Références pour optimisation du serveur MySQL
Utilisation de EXPLAIN mysql pour optimiser vos bases
optimiser vos bases - requetes et index
STOCKAGE RESEAU :
Un outil de clonage disque en reseau
Internet NAS 250Go 250 accès VPN
Server ISCSI avec Ubuntu tuto
ISCSI centos redhat tutoriel
Gérer et étendre un LVM
Créer sa piratebox ! trop cool
Deaddrops, les clés USB dans les murs, aussi cool !
OPTIMISATION WORDPRESS :
Télécharger Xenu
Comment utiliser Xenu
optimisation hébergement wordpress
Super howto wordpress (En)
Test de charge serveur web - Load impact
VPN - ROUTEUR - LAN:
Zeroshell - le mini-routeur wifi tout en un
Retroshare, votre réseau d'échange crypté!
Openvpn sur centos redhat
Intégrer Linux dans active directory
Routage inter-vlan avec Linux
Routage avec OSPF
Network Weathermap
TENDANCES - WEB:
Boutons twitter
Analyser les tendances des recherches Google
Protocole sitemap - robots.txt
Creer des animations CSS3
Code php pour interagir avec twitter
E reputation
Jquery
TRUCS ET ASTUCES GNU/LINUX :
Tuxmachines.org - Actus et tips linux
Configurer GRUB2 et grub2 ici
Panoet - en anglais - tips & tricks
Readylines tips and trick pertinents
Squid Clamav - proxy antivirus
Apprendre Unix en 10 minutes
13 tips sur les expressions régulières
IE Sous linux IES
LDAP 2.4 Quickstart guide
Tutoriel LDAP
Installation annuaire LDAP
Serveur Mail Postfix - Dovecot - LDAP - MDS
Créer un linux personnalisé en ligne - custom linux
Super site sur linux - en
Capistrano - déploiement automatisé
MONITORING :
Nagios tutoriel et doc
Nagios plugin NRPE tuto
Nagios plugin NRPE autre tuto
Nagios plugin NRPE officiel
Zabbix - fonctionnalités
Zabbix - installation
Guide MRTGsys - grapher la charge locale
MRTGsys - ajouter des graphs
MRTGsys - interpréter les données
Shinken - Monitoring
Thruk Monitoring webinterface
Shinken - Tutoriel
Shinken - Référence chez Nicolargo
AUTRES LIENS :
RemixJobs IT jobs
USB Multiboot
Reset mot de passe windows
Java python et autres tips, intéressant !
Forum inforeseau
Open Clipart
Excellent comic en ligne
Inforeseau.fr