Voici un petit guide d’installation de Redmine 1.0.1 sur la distribution CentOS 5.5 avec Apache. Nous partirons du principe que votre CentOS contient les paquets de base de la configuration « Server » proposée à l’installation. Ce guide peut également servir pour une migration (il a d’ailleurs été utilisé pour le passage d’une version 0.8.* de Redmine vers la 1.0.1).
Prérequis pour l’installation
Si vous possédez déjà une installation de Redmine dans une ancienne version, il vous faut procéder à une sauvegarde SQL (depuis phpmyadmin ou autres outils par exemple). Ensuite, les paquets requis pour le fonctionnement de Redmine 1.0.1 et l’installation (manuelle) des composants ruby sont:
- Apache
yum install httpd
- MySQL
yum install mysql-devel mysql-server
- GCC
yum install gcc
- ZLib (pour gems)
yum install zlib zlib-devel
- Subversion (récupération de la dernière version de Redmine)
yum install subversion
et pour les version requises par Redmine 1.0.1:
- Ruby 1.8.6 – 1.8.7
- Rails 2.3.5
- Rack 1.0.1
Nous allons ainsi installer (manuellement, les versions requises de ces paquets ne sont pas encore disponible dans CentOS):
- ruby-1.8.7
- rubygems-1.3.6
- rails-2.3.5 et autres gems requis
- fastcgi et mod_fastcgi
Incompatibilités
Lors de la mise à jour, j’ai constaté que plusieurs plugins n’étaient plus compatibles avec Redmine 1.0.1. Le script de migration de la base de donnée vous avertira en temps voulu en cas de problème.
Installation
Nous allons commencer par installer Ruby
Installation de Ruby 1.8.7:
wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7.tar.gz
tar xvfz ruby-1.8.7.tar.gz
cd ruby-1.8.7
./configure
make make install
Configuration de ZLib pour Ruby (Requis pour Gems):
cd ruby-1.8.7/ext/zlib
ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
make
make install
Nous pouvons maintenant installer Rails:
wget http://rubyforge.org/frs/download.php/69365/rubygems-1.3.6.tgz
tar xvfz rubygems-1.3.6.tgz
cd rubygems 1.3.6
gem install rails -v=2.3.5
et le gem mysql
gem install mysql
Installation de Redmine 1.0.1
Il nous faut tout d’abord récupérer Redmine 1.0.1:
svn co http://redmine.rubyforge.org/svn/tags/1.0.1/ redmine
chown -R apache.apache redmine
cd redmine
Lancer mysql et apache (si pas déjà fait), et creation de la base de donnée (si aucune sauvegarde de version précédente n’est disponible):
mysql -u root -p
mysql> create database redmine character set utf8;
mysql> create user 'redmine'@'localhost' identified by 'mot_de_passe';
mysql> grant all privileges on redmine.* to 'redmine'@'localhost';
Ensuite, pour charger la sauvegarde dans la base de donnée (si disponible):
-
mysql -u root -p redmine < redmine_backup.sql
Il reste à copier l’ancienne configuration de la base de donnée (l’éditer si nécessaire):
cp REDMINE_OLD/config/database.yml config/database.yml
puis générer une clé de session:
RAILS_ENV=production rake config/initializers/session_store.rb
et effectuer la migration du schema de base de donnée:
RAILS_ENV=production rake db:migrate
ainsi que des éventuels plugins:
RAILS_ENV=production rake db:migrate:upgrade_plugin_migrations
RAILS_ENV=production rake db:migrate_plugins
Vérification des droits sur les répertoires:
sudo chown -R apache.apache files log tmp public/plugin_assets
Enfin, testons le lancement de Redmine:
ruby script/server webrick -e production
Le serveur devrait être accessible à l’adresse http://IP_SERVEUR:3000
Configuration de Redmine pour Apache
Le guide suivi pour la configuration de Redmine sur Apache se trouve sur : http://www.redmine.org/wiki/1/HowTo_configure_Apache_to_run_Redmine Il est conseillé d’utiliser FastCGI.
Divers
Si les performances du serveur sont médiocre, il pourrait être intéressant de limiter le nombre de process ruby créés par apache. Plus d’informations à ce sujet peuvent être trouvées dans la documentation du module FastCGI d’Apache.