Notes sur l'installation de http://redmine.auf.org
(rappel : première version de JeanChristopheAndré : /PremiereVersion)
On a décidé d'installer la version 0.9 (actuellement en finalisation) de façon «classique», c'est à dire sans passer par un paquet Debian. Le framework Rails est également installé directement, via le système «gem» de Ruby. Quelques paquets viennent des backports.
Sources d'inspiration :
Préparation
Machine Debian Lenny 5.0, avec activation des backports et de volatile :
ajout de lenny/volatile et lenny-backports au /etc/apt/sources.list
création d'un fichier /etc/apt/preferences contenant :
Explanation: autoriser les mises à jour automatiques pour les backports Package: * Pin: release a=lenny-backports Pin-Priority: 200
correction du /etc/hosts pour mettre le nom pleinement qualifié (FQDN) avant l'alias...
vérification du support des locales Unicode, en particulier fr_FR.UTF-8
installation de mysql-server, sécurisation et mise en place du support Unicode
installation de apache2 et mise en place du support Unicode
Installation Ruby et paquets ruby de base nécessaires
# aptitude install ruby # aptitude install irb # facultatif, utile pour le script/console de redmine # aptitude -t lenny-backports install rubygems rake # aptitude install libopenssl-ruby # aptitude install libdbd-mysql-ruby mysql-client # aptitude install librmagick-ruby # facultatif, permettra d'avoir des graphes dans redmine
Installation de rails 2.3.5 et dépendances (via gem)
# gem install rails -V -v=2.3.5 (...) Successfully installed rake-0.8.7 Successfully installed activesupport-2.3.5 Successfully installed activerecord-2.3.5 Successfully installed rack-1.0.1 Successfully installed actionpack-2.3.5 Successfully installed actionmailer-2.3.5 Successfully installed activeresource-2.3.5 Successfully installed rails-2.3.5 8 gems installed
Téléchargement de redmine 0.9-stable via svn
On installe redmine dans /opt :
# cd /opt # svn checkout http://redmine.rubyforge.org/svn/branches/0.9-stable redmine-0.9 # ln -s redmine-0.9 redmine
Configuration de redmine
Création de la base MySQL redmine09 et de l'utilisateur correspondant :
create database redmine09 character set utf8; create user 'redmine'@'localhost' identified by 'trucmachin'; grant all privileges on redmine09.* to 'redmine'@'localhost';
Connexion de redmine à cette base :
# cat > config/database.yml << EOF production: adapter: mysql database: redmine09 host: localhost username: redmine password: trucmachin encoding: utf8 EOF
Initialisation de redmine
$ rake generate_session_store $ export RAILS_ENV=production $ rake db:migrate $ rake redmine:load_default_data $ rake db:migrate_plugins # est-ce nécessaire ? je ne pense pas, mais ça fait pas de mal.
Mise en production via mongrel
(note : ceci est inspiré de http://doc.ubuntu-fr.org/redmine#configuration)
Mongrel est un serveur HTTP qui va propulser redmine sur un port local (127.0.0.1:3000). C'est ensuite apache qui rendra redmine visible de l'extérieur en HTTPS (voir ci-dessous) :
# aptitude install mongrel
Ajout d'un script de démarrage de redmine via mongrel dans /etc/init.d//etc/init.d/redmine_mongrel, et activation de ce script avec update-rc.d redmine_mongrel defaults
Mise à disposition en HTTPS avec apache
Activation des modules d'apache2 nécessaires :
# a2enmod proxy proxy_http ssl
On installe le certificat et la clé SSL pour *.auf.org et on configure le site dans /etc/apache2/sites-enabled/redmine.auf.org :
<VirtualHost *:443> (...) SSLEngine on SSLCertificateFile /.../all-auf.org.crt SSLCertificateKeyFile /.../all-auf.org.key SSLCACertificateFile /.../CA.pem SSLVerifyClient None (...) ProxyPreserveHost Off ProxyPass / http://127.0.0.1:3000/ ProxypassReverse / http://127.0.0.1:3000/ <Proxy *> Order allow,deny Allow from all </Proxy> </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@auf.org ServerName redmine.auf.org Redirect permanent / https://redmine.auf.org/ </VirtualHost>
C'est tout...