====== Installer les paquets pour ruby ====== Les paquets sont en testing chez SME Il y a une [[ https://wiki.contribs.org/RubyOnRails | page sur l'installation de ruby de chez contribs.org ]]. Deux solutions : - ajouter un dépôt temporaire ; - ajouter les paquets un par un. ===== Avec un dépôt temporaire ===== ==== Ajouter le dépôt ==== en root : /sbin/e-smith/db yum_repositories set c4-testing repository \ Name 'CentOS-4 Testing' \ BaseURL 'http://dev.centos.org/centos/4/testing/i386/' \ EnableGroups no \ GPGCheck yes \ GPGKey http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing \ Visible yes \ status disabled ==== Installer les paquets ==== en root : yum install ruby ruby-devel ruby-irb ruby-libs ruby-rdoc ===== Ajouter les paquets un par un ===== ==== Récupérer les paquets ==== sur [[http://dev.centos.org/centos/4/testing/i386/RPMS/]] Pour ruby 1.8.5 : cd /tmp wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-1.8.5-5.el4.centos.1.i386.rpm wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-devel-1.8.5-5.el4.centos.1.i386.rpm wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-irb-1.8.5-5.el4.centos.1.i386.rpm wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-libs-1.8.5-5.el4.centos.1.i386.rpm wget http://dev.centos.org/centos/4/testing/i386/RPMS/ruby-rdoc-1.8.5-5.el4.centos.1.i386.rpm ==== Installer les paquets ==== en root : cd /tmp rpm install ruby-1.8.5-5.el4.centos.1.i386.rpm \ ruby-devel-1.8.5-5.el4.centos.1.i386.rpm \ ruby-irb-1.8.5-5.el4.centos.1.i386.rpm \ ruby-libs-1.8.5-5.el4.centos.1.i386.rpm \ ruby-rdoc-1.8.5-5.el4.centos.1.i386.rpm ====== Installer Gem ====== Gem permet est l'installateur interne de Ruby. La version installée est 1.3.1 Pour avoir la dernière version, aller sur [[http://rubyforge.org/frs/?group_id=126 | RubyForge]] cd /tmp wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz tar xzf rubygems-1.3.1.tgz cd rubygems-1.3.1 ruby setub.rb ====== Installer Rails ====== gem install rails --include-dependencies ====== Installer la librairie MySql pour Rails ====== gem install mysql -- --with-mysql-dir=/var/lib/mysql --with-mysql-include=/usr/include/mysql --with-mysql-lib=/usr/lib/mysql Attention à bien préciser les divers répertoires où sont les fichiers ''include'', ''lib'' et ''bin''. Si gem ne les trouve pas, on a une erreur du style : /usr/local/bin/ruby extconf.rb install mysql checking for mysql_query() in -lmysqlclient... no checking for main() in -lm... yes checking for mysql_query() in -lmysqlclient... no checking for main() in -lz... yes checking for mysql_query() in -lmysqlclient... no checking for main() in -lsocket... no checking for mysql_query() in -lmysqlclient... no checking for main() in -lnsl... no checking for mysql_query() in -lmysqlclient... no enfin, si vous ne voyez pas mysql dans le répertoire ''include'', il faut installer mysql-devel : yum install mysql-devel.i386 ====== Tester Rails ====== Un [[http://guides.rubyonrails.org/getting_started_with_rails.html | tutoriel]] pour commencer. Attention, pour visualiser votre page, aller sur ''http:/ /localhost:3000'' et non ''https:/ /localhost:3000'' ce qui pourrait générer une erreur ''ssl_error_rx_record_too_long'' ====== SME et le service rail ====== * definir un domaine pour autoriser les connexions ex: rails.monsite.org * avoir installer et lancer la configuration du service dans /opt/rails * ecrire un template pour pointer sur /opt/rails mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf echo " # rubbyonrail ServerName cartes.du-libre.org:80 DocumentRoot /opt/osm/cartes/public Order allow,deny Allow from all " > /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/79rails expand-template /etc/httpd/conf/httpd.conf service httpd-e-smith restart ======SME et le module apache====== http://articles.slicehost.com/2009/4/7/centos-mod_rails-installation http://forums.ixus.net/viewtopic.php?f=19&t=32812&start=0 mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf echo " LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apa che2/mod_passenger.so PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15 PassengerRuby /usr/bin/ruby > /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/20LoadModule80mod_ruby