Installation de Redmine 3.0.3 sous Debian 7 avec passenger
On ne présente plus redmine, le soft open-source de gestion de projet développé en Ruby sur la base du framework Ruby on Rails.
Pré requis
Un serveur sous Debian 7 64 bit vierge.
Introduction
Je vais vous montrer comment installer redmine en version 3 sur une Debian 7 avec :
- mysql 5.5
- ruby 2.2
- rails 4.2
- gem 2.4.5
- apache2
- passenger
- et une authentification ldap
Installation d’apache et de mysql
On commence par le plus simple, on rajoutera le php et phpmyadmin et imagemagick en même temps.
apt-get install mysql-server mysql-common libmysqlclient-dev mysql-client apache2 apache2-mpm-prefork apache2-prefork-dev libapr1-dev libaprutil1-dev libfcgi-dev libssl-dev zlib1g-dev libcurl4-openssl-dev phpmyadmin imagemagick libmagickwand-dev php5 libapache2-mod-php5 php5-mysql php5-ldap php5-imagick php5-curl php5-gd php5-intl php-pear php5-imap php5-mcrypt php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php-apc curl vim subversion
Vous pouvez après reprendre les fichiers de configuration d’apache, php et mysql afin d’optimiser le tout et surtout le sécuriser.
Installation de ruby
Nous allons d’abord installer les pré-requis puis télécharger la dernière version disponible. En effet le package dans Debian est la 1:1.9.3
C’est d’ailleurs pour cela que je n’ai pas installé le paquet passenger disponible.
apt-get install gcc build-essential zlib1g zlib1g-dev zlibc libzlib-ruby libssl-dev libyaml-dev libcurl4-openssl-dev libapr1-dev libxslt-dev checkinstall libffi-dev libreadline-dev git-core
Afin de faciliter l’installation, on va utiliser rmv
J’ai essayé avec rbenv et j’ai eu des soucis pour info.
mkdir /usr/local/rvm
cd /usr/local/rvm
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable --rails
usermod -aG rvm www-data
Il faut maintenant reload votre shell
source ~/.bashrc
Pour vérifier que c’est bon :
ruby -v
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux]
Si vous obtenez
ruby 1.8.7 (2012-02-08 patchlevel 358) [x86_64-linux]
c’est que vous avez le paquet ruby de debian, supprimez le et recommencez l’installation comme décrite ci-dessus
et on vérifie gem
gem -v
Installation de rails, bundler et passenger pour redmine
gem install bundler
gem install passenger
On active le passenger
On génère les fichiers de configuration de passenger
passenger-install-apache2-module
On va mettre en place le fichier de configuration
vim /etc/apache2/mods-available/passenger.conf
PassengerRoot /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.6
PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.2.1/wrappers/ruby
Puis le chargement du module
vim /etc/apache2/mods-available/passenger.load
LoadModule passenger_module /usr/local/rvm/gems/ruby-2.2.1/gems/passenger-5.0.6/buildout/apache2/mod_passenger.so
On active le module et on refresh apache
a2enmod passenger
apache2ctl graceful
On vérifie que le module est bien activé
apache2ctl -t -D DUMP_MODULES | grep passenger
qui doit nous répondre
passenger_module (shared)
Tout va bien on continue.
Création de la base de données redmine
CREATE DATABASE redmine CHARACTER SET utf8;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
Pensez à changer my_password par votre mot de passe.
Installation de redmine
mkdir -p /data/www/rubyonrails/
cd /data/www/rubyonrails
Pour plus de sécurité, nous allons créer un utilisateur système redmine avec pour groupe www-data
useradd -d /home/ -g 33 -m -s /bin/sh redmine
On télécharge notre archive et on la décompresse, pour faciliter les mises à jour futures, je vais créer un lien symbolique
wget http://www.redmine.org/releases/redmine-3.0.3.tar.gz
tar xvfz redmine-3.0.3.tar.gz
rm redmine-3.0.3.tar.gz
ln -s redmine-3.0.3 redmine
On configure la connexion à la base de données
cp -p /data/www/rubyonrails/redmine/config/database.yml.example /data/www/rubyonrails/redmine/config/database.yml
On se place dedans
cd /data/www/rubyonrails/redmine/
On installe les dépendances
bundle install --without development
On génère le token
bundle exec rake generate_secret_token
On nourrit la base de données de production
RAILS_ENV=production bundle exec rake db:migrate
puis
RAILS_ENV=production bundle exec rake redmine:load_default_data
On configure le vhost d apache
vim /etc/apache2/sites-available/redmine.site.com
<VirtualHost *:80>
ServerName redmine.site.com
DocumentRoot /data/www/rubyonrails/redmine/public/
<Directory /data/www/rubyonrails/redmine/public/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
RailsEnv production
AddOutputFilter DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
ErrorLog /var/log/apache2/redmine.site.com/error.log
LogLevel warn
CustomLog /var/log/apache2/redmine.site.com/access.log combined
</VirtualHost>
on active le site et on restart apache
a2ensite redmine.site.com
apache2ctl graceful
Conclusion
Vous voila avec une installation redmine, il ne vous reste plus qu’à configurer vos projets et votre authentification Ldap dans l’administration de votre interface.



5 comments