Pierhomme - Tutoriels


Administrateur SGBD et Unix

Wiki & Tutoriels

Debian Lenny 5 & Redmine avec Apache & Mysql

Date MaJ : 07/12/2009
Nous allons réaliser l'installation de Redmine sur une Debian Lenny (5), avec un serveur Apache 2 utilisé en mode Proxy, Mongrel, Mysql (et phpmyadmin) Redmine est un projet open-source de Gestion de tâche assez complet et programmé en RoR. Commençons par installer les modules initiaux
  1. apt-get install php5 php5-mcrypt apache2 mysql-server phpmyadmin
Créons un utilisateur redmine attaché au groupe www-data (Apache)
  1. useradd -g 33 -m -s /bin/bash redmine
-g 33 force le user à appartenir au groupe www-data -m dit qu'il faut créer la home -s /bin/bash indique le shell du user Installons maintenant ruby
  1. apt-get install ruby rdoc irb libyaml-ruby ruby1.8-dev libzlib-ruby ri libopenssl-ruby1.8
  2. cd /root
  3. wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
  4. tar xvzf rubygems-1.3.1.tgz
  5. cd rubygems-1.3.1
  6. ruby setup.rb
  7. ln -s /usr/bin/gem1.8 /usr/bin/gem #Afin de faire un alias de gem vers gem1.8
Ruby est maintenant installé. Afin d'utiliser RoR, il faut télécharger les packages de rails
  1. gem install rails -v 2.1.2
  2. apt-get install libmysqlclient15-dev make imagemagick libmagick9-dev librmagick-ruby1.8
  3. gem install mysql
  4. gem install rmagick
RoR étant installé, téléchargeons et configurons remdine
  1. cd /home/redmine & su redmine # pour installer en utilisant les droits de l'util redmine
  2. wget http://rubyforge.org/frs/download.php/67144/redmine-0.8.7.tar.gz
  3. mv redmine-0.8.7 redmine #plus compréhensible
sous phpmyadmin créons la base de donnée redmine et l'utilisateur possédant les droits Aller dans Privilège : Ajouter un utilisateur. Créez votre utilisateur en indiquant de creer une bdd correspondant Paramétrons la connexion de redmine vers mysql
  1. cd redmine/config
  2. cp database.yml.example database.yml
  3. nano database.yml
Renseigner le champ production Initialisation de la base de donnée :
  1. rake db:migrate RAILS_ENV="production"
Test Redmine
  1. cd ..
  2. ruby script/server -e production
http://ip:3000 La page d'accueil de Redmine devrait dans votre navigateur préféré. Si tel n'est pas le cas, vérifiez les droits de vos répertoires afin que www-data puisse avoir accès à redmine
  1. chown -R redmine:www-data /home/redmine
Retourner en mode SU
  1. exit #afin de repartir en root
Installation de mongrel
  1. gem install gem_plugin mongrel mongrel_cluster
  2. mongrel_rails cluster::configure -e production -p 8000 -N 3 -c /home/redmine/redmine -C /home/redmine/redmine/config/mongrel_cluster.yml -a 127.0.0.1 --user redmine --group www-data
-p 8000 lance Mongrel sur le port 8000 -N 3 indique qu'il y aura 3 instances du serveur -c /home/redmine/redmine le chemin vers la racine de redmine -C /home/redmine/redmine/config/mongrel_cluster.yml le chemin vers où le fichier de configuration va être créé -a dit à Mongrel d'écouter le localhost Créons maintenant les fichiers de paramétarge de Mongrel
  1. mkdir /etc/mongrel
  2. ln -s /home/redmine/redmine/config/mongrel_cluster.yml /etc/mongrel_cluster/monsite.yml
  3. nano /etc/init.d/mongrel_cluster
Intégrer le code ci-dessous
  1. #!/bin/bash
  2. #
  3. # Copyright (c) 2007 Bradley Taylor, bradley@railsmachine.com
  4. #
  5. # mongrel_cluster Startup script for Mongrel clusters.
  6. #
  7. # chkconfig: - 85 15
  8. # description: mongrel_cluster manages multiple Mongrel processes for use \
  9. # behind a load balancer.
  10. #
  11. CONF_DIR=/etc/mongrel_cluster
  12. PID_DIR=/home/redmine/redmine/tmp/pids
  13. USER=redmine
  14. RETVAL=0
  15. # Gracefully exit if the controller is missing.
  16. which mongrel_cluster_ctl >/dev/null || exit 0
  17. # Go no further if config directory is missing.
  18. [ -d "$CONF_DIR" ] || exit 0
  19. case "$1" in
  20. start)
  21. # Create pid directory
  22. mkdir -p $PID_DIR
  23. chown $USER:www-data $PID_DIR
  24. mongrel_cluster_ctl start -c $CONF_DIR --clean
  25. RETVAL=$?
  26. ;;
  27. stop)
  28. mongrel_cluster_ctl stop -c $CONF_DIR --clean
  29. RETVAL=$?
  30. ;;
  31. restart)
  32. mongrel_cluster_ctl restart -c $CONF_DIR --clean
  33. RETVAL=$?
  34. ;;
  35. status)
  36. mongrel_cluster_ctl status -c $CONF_DIR --clean
  37. RETVAL=$?
  38. ;;
  39. *)
  40. echo "Usage: mongrel_cluster {start|stop|restart|status}"
  41. exit 1
  42. ;;
  43. esac
  44. exit $RETVAL
Activer l'exécution du fichier et son implétentation dans les processus de demarrage
  1. chmod +x /etc/init.d/mongrel_cluster
  2. update-rc.d -f mongrel_cluster defaults
Configurons maintenant Apache en mode proxy
  1. a2enmod rewrite
  2. a2enmod proxy_http
  3. a2enmod proxy_balancer
  4. nano /etc/apache2/mods-available/proxy.conf
Copier le code ci-dessous
  1. AddDefaultCharset off
  2. Order allow,deny
  3. Allow from all
  4. #Allow from .example.com
Configurons le virtualhost d'Apache
  1. nano /etc/apache2/sites-available/redmine
Avec le code ci-dessous
  1. ServerAdmin admin@redmine.localdomain.loc
  2. ServerName redmine.localdomain.loc
  3. DocumentRoot /home/redmine/redmine/public/
  4. Options Indexes FollowSymLinks MultiViews
  5. AllowOverride All
  6. Order allow,deny
  7. allow from all
  8. BalancerMember http://127.0.0.1:8000
  9. BalancerMember http://127.0.0.1:8001
  10. BalancerMember http://127.0.0.1:8002
  11. RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} -f
  12. RewriteRule (.*) $1 [L]
  13. ProxyPass / Balancer://mongrel_cluster/
  14. ProxyPassReverse / balancer://mongrel_cluster/
  15. AddOutputFilter DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css
  16. BrowserMatch ^Mozilla/4 gzip-only-text/html
  17. BrowserMatch ^Mozilla/4.0[678] no-gzip
  18. BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
  19. ErrorLog /var/log/apache2/redmine.redmine.localdomain.error.log
  20. LogLevel warn
  21. CustomLog /var/log/apache2/redmine.redmine.localdomain.access.log combined
  22. ServerSignature Off
Activons Redmine dans Apache
  1. a2ensite redmine
  2. /etc/init.d/apache2 restart
Vous pouvez maintant vous connecter à redmine sur http://redmine.localdomain.loc Utilisateur par défaut : admin:admin Attention !!! Il faut absolument changer le mot de passe immédiatement rsrc : http://www.admincafe.re/forums/showthread.php?t=250