Article en cours de rédaction

Installer Redmine

Redmine est gestionnaire de projet logiciel écrit en Ruby et basé sur Ruby on Rails (RoR). Cet article montre un exemple d'installation d'une application RoR avec intégration dans Apache.

Installer les prérequis

Ruby

  • Installer ruby avec la doc :
# aptitude install ruby rdoc ri libopenssl-ruby

Il faut aussi certains packages ruby tiers, pour le support PostgreSQL par exemple. Il s'agit de “RubyGems”, qu'on peut comparer à Pear pour PHP ou les modules Perl provenant du CPAN.

  • Installer RubyGems :
# aptitude install rubygems

Ce package fourni la base de pour obtenir et gérer les gems, surtout avec la commande /usr/bin/gem.

On va ensuite installer le gem de rake, il s'agit de l'équivalent de la commande make pour Ruby:

# gem install rake
Successfully installed rake-0.8.7
1 gem installed
Installing ri documentation for rake-0.8.7...
Installing RDoc documentation for rake-0.8.7...
# gem list
*** LOCAL GEMS ***
rake (0.8.7)

Apache

Voir l'article détaillé. On va ajouter mod_proxy FIXME

# a2enmod 
Your choices are: ...
... proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http rewrite
...
Which module(s) do you want to enable (wildcards ok)?
proxy_http
Considering dependency proxy for proxy_http:
Enabling module proxy.
Enabling module proxy_http.
Run '/etc/init.d/apache2 restart' to activate new configuration!
# /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting .

Vhost: /etc/apache2/sites-available/redmine.example.org

<VirtualHost *:80>
	ServerAdmin webmaster@localhost
	ServerName redmine.example.org
	DocumentRoot /var/www/example.org/redmine/public
	<Directory /var/www/example.org/redmine/public>
		Options FollowSymLinks
		AllowOverride None
		Order allow,deny
		Allow from all
	</Directory>
	ErrorLog /var/log/apache2/example.org/redmine_error.log
	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn
	CustomLog /var/log/apache2/example.org/redmine_access.log combined
	Alias /images /var/www/example.org/redmine/public/images
	Alias /stylesheets /var/www/example.org/redmine/public/stylesheets
	Alias /javascripts /var/www/example.org/redmine/public/javascripts
	<Proxy *>
		Order deny,allow
		Allow from all
	</Proxy>
#	ProxyPreserveHost on
	ProxyPass / http://localhost:3000/
	ProxyPassReverse / http://localhost:3000
	ProxyPass /images ! 
	ProxyPass /stylesheets ! 
	ProxyPass /javascripts !
</VirtualHost>

PostgreSQL

Voir l'article détaillé. On va ajouter le gem pour que Ruby, et par extension Redmine puisse parler avec PostgreSQL. On va la compiler, il faut donc ajouter les versions -dev de certains paquets:

# aptitude install ruby-dev libpq-dev

On peut alors ajouter le gem pg :

# gem install pg
Building native extensions.  This could take a while...
Successfully installed pg-0.8.0
1 gem installed
Installing ri documentation for pg-0.8.0...
Installing RDoc documentation for pg-0.8.0...

On créé ensuite, un utilisateur et une base dédiée pour Redmine :

# su - postgres
$ createuser -SDRlIPE redmine
--> Entrer un mot de passe
$ createdb -E UTF8 -O redmine redmine

Mongrel

# aptitude install mongrel
# useradd -d /var/www -g www-data -N -r -s /bin/false mongrel

FIXME: passer le rc-script en mode Debian à partir de skeleton

#!/bin/sh
APP_ROOT=/var/www/example.org/redmine
DB=production
PORT=3000
USER=mongrel
GROUP=www-data
case $1 in
	start)
		mongrel_rails start -e $DB -p $PORT -a localhost -P $APP_ROOT/log/mongrel_${PORT}.pid -c $APP_ROOT --user $USER --group $GROUP -d
		rc=$?
		;;
	stop)
		mongrel_rails stop -c $APP_ROOT -P $APP_ROOT/log/mongrel_${PORT}.pid
		rc=$?
		;;
	restart)
		$0 stop
		$0 start
		;;
	*)
		echo "Usage: `basename $0` {start|stop|restart}"
		exit 1
		;;
esac
exit $rc

FIXME config logrotate

Installer Redmine

FIXME

# gem install -v=2.3.5 rails
# cd /var/www/example.com/redmine
# svn co http://redmine.rubyforge.org/svn/branches/0.9-stable .
# cd config
# cp database.yml.example database.yml
-> Editer database.yml
# rake generate_session_store
# RAILS_ENV=production rake db:migrate
# RAILS_ENV=production rake redmine:load_default_data
(in /var/www/example.com/redmine)
Select language: bg, bs, ca, cs, da, de, el, en, es, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sr, sv, th, tr, uk, vi, zh, zh-TW [en] en
====================================
Default configuration data loaded.
mkdir tmp public/plugin_assets
sudo chgrp -R www-data files log tmp public/plugin_assets
sudo chmod -R g+w files log tmp public/plugin_assets
 
web/installer-redmine.txt · Dernière modification: 11/12/2010 17:45 par orgrim