Présentation

Redmine est un outil de collaboration avec interface web qui propose :

MĂ©thode d’installation

Voici les notes que j’ai prises durant l’installation. — Olivier DOSSMANN 2010/04/07 03:58

La machine est une Debian Lenny, normalement Ruby1.8 est déjà installé (mais pas toujours sûr).

ssh root@ipmachine
apt-get install ruby1.8
wget -O - http://backports.org/debian/archive.key | apt-key add -
echo "deb http://www.backports.org/debian lenny-backports main contrib non-free" >> /etc/apt/sources.list
apt-get update
apt-get -t lenny-backports install rubygems
apt-get -t lenny-backports install rake
gem install rails -v=2.3.5
gem install postgres-pr
apt-get install ruby1.8-dev
apt-get install librmagick-ruby
apt-get install libopenid-ruby
apt-get install libopenssl-ruby1.8
apt-get install subversion
svn checkout http://redmine.rubyforge.org/svn/trunk redmine
cd redmine/config
cp database.yml.example database.yml
nano database.yml

On remplit avec :

production:
  adapter: postgresql
  database: redmine
  host: localhost
  username: redmine
  password: mot2passe
  encoding: utf8

Ensuite on fait :

cd ../
nano /etc/profile

On ajoute :/var/lib/gems/1.8/bin à la fin de chaque variable PATH des 10 premières lignes (deux lignes à changer) :

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/var/lib/gems/1.8/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/games:/var/lib/gems/1.8/bin"
fi

Ceci afin que Debian connaisse Ruby. C’est un bug connu : Debian ne veut rien savoir de Ruby quasiment car rubygem outrepasse certaines règles en permettant d’installer tout et n’importe quoi sans respecter la charte Debian.

De là on peut lancer (dans le répertoire de Redmine) :

RAILS_ENV=production rake config/initializers/session_store.rb
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data

On tape fr Ă  la demande, ceci permet d’ajouter les donnĂ©es de configuration par dĂ©faut.

On crée ensuite un utilisateur :

useradd -m -s /bin/bash redmine
passwd redmine

Ensuite on vérifie que les dossiers existent avec la commande suivante, puis on donne les permissions dessus :

mkdir tmp public/plugin_assets
chown -R redmine:redmine files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets

Pour être sûr que cela fonctionne, on lance la commande suivante et on accède au serveur via un navigateur Web sur le port 3000 :

ruby script/server webrick -e production

On peut se connecter avec les id/mdp suivants :

Il est fortement conseillĂ© de tout de suite aller dans la configuration de l’Administrateur et de changer le mot de passe.

Explication sur les paquets installés

Configuration courriel

Il faut copier le fichier email.yml.example - dans le dossier config - en email.yml puis le modifier. Cf. http://www.redmine.org/wiki/redmine/Email_Configuration pour de plus amples informations.

J’ai suivi ceci pour permettre Ă  Gmail de fonctionner : http://redmineblog.com/articles/setup-redmine-to-send-email-using-gmail/ .

Le serveur n’est pas totalement fini ! Redmine fonctionne, mais il faut encore vĂ©rifier les mĂ©thodes pour rĂ©cupĂ©rer frĂ©quemment le dĂ©pĂ´t GIT et faire un lien entre les changements du dĂ©pĂ´t et le rĂ©sultat sur Redmine.

Configuration pour faire fonctionner sur Apache

Il faut avant tout installer Phusion Passenger :

apt-get install ruby-pkg-tools
gem install passenger
passenger-install-apache2-module

Suivre les instructions faites Ă  l’Ă©cran, relancer la commande passenger-install-apache2-module si besoin.

Ensuite dans Apache, fichier /etc/apache2/sites-enabled/000-default, ajouter ceci en fin de fichier :

 <VirtualHost *:80>
   ServerName redmine.dossmann.net
   ServerAdmin gniogniotte@gmail.com

   DocumentRoot /srv/trinite/redmine/public
   php_admin_flag engine off
 </VirtualHost>

Il faut aussi créer le fichier suivant /etc/apache2/mods-available/passenger.load :

LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.11/ext/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.11
PassengerRuby /usr/bin/ruby1.8

Activez le module passenger Ă  l’aide de la commande suivante :

a2enmod passenger

Puis redémarrer Apache2 :

invoke-rc.d apache2 restart

Erreur 500 : Internal Server Error

Si vous avez une erreur 500, plusieurs possibilités :

rake tmp:cache:clear
rake tmp:sessions:clear
chown -R www-data:www-data /dossier/de/redmine
a2enmod rewrite

Redmine sur le serveur Nginx

Il semblerait qu’il soit plus lĂ©ger d’utiliser Redmine sur Nginx : http://pelletiermaxime.info/2009/02/23/Redmine-On-Nginx.html .

Erreurs rencontrées

Installation de rmagick

Si l’installation des “gems” coince sur rmagick, il faut installer : graphicsmagick-libmagick-dev-compat et libmagickwand-dev.

Fichiers lua non reconnus

vi lib/redmine/mime_type.rb

Puis ajouter “lua” Ă  la fin de la ligne “text/plain”.

Redémarrer le serveur.

Liens utiles