Tengo que instalar Redmine en un cliente. La maquina es una SLES 11, para variar y ya tiene funcionando un Apache2 con mod_jk. Necesitamos instalar las herramientas de desarrollo de apache, así como ruby y su sistema de gestión de modulos, gem.
servidor:~# zypper install gcc make ruby rubygems rubt-devel rubygem-rake rubygem-rails apache2-devel gcc-c++ servidor:~# gem install passenger servidor:~# /usr/bin/passenger-install-apache2-module
Este ultimo comando, nos dira si nos falta algo. En caso contrario, nos compila el modulo en /usr/lib/ruby/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so
Lo copiamos a /usr/lib/apache2/
porque si no, al figurar en /etc/sysconfig/apache2
, no lo encontrara en el inicio y no lo cargará (demasiado automatismo tonto)
Posteriormente añadimos estas dos lineas a un .conf de apache, yo creo
/etc/apache2/redmine-adicionales.conf
y lo incluyo en /etc/apache2/httpd.conf
añadiendole la linea Include /etc/apache2/redmine-adicionales.conf
PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.15
PassengerRuby /usr/bin/ruby1.8
Ahora creamos un VirtualHost nuevo en /etc/apache2/conf.d/0x-hostname.dominio.tld.conf
que contenga:
ServerName redmine.tudominio.tld ServerAlias respondeaquitambien.tudominio.tld DocumentRoot /srv/redmine/publicAllowOverride all Options -MultiViews LogLevel warn CustomLog /var/log/apache2/redmine.dominio.tld-access.log combined ErrorLog /var/log/apache2/redmine.dominio.tld-error.log
Nos vamos a /srv y nos bajamos el tarball de redmine:
servidor:~# cd /srv servidor:~# wget 'http://rubyforge.org/frs/download.php/71723/redmine-1.0.0.tar.gz' servidor:~# tar zxvf redmine-1.0.0.tar.gz servidor:~# mv redmine-1.0.0 redmine servidor:~# chown -R wwwrun.www redmine
Redmine depende de una base de datos, así que creamos la base de datos, usuario y la poblamos con la estructura que viene con el programa.
servidor:~# mysql -u root -p mysql> create database redmine charset utf8; mysql> grant all on redmine.* to redmine@'localhost' identified by 'contraseñaquequieras'; mysql> flush privileges;
##NOTA: En caso de que esto te de algún problema, puedes ejecutar en el mysql también:
mysql> grant all on redmine.* to redmine@'%' identified by 'contraseñaquequieras'; mysql> flush privileges;
##
La configuración de la base de datos va en /srv/redmine/config/database.yml
y este es su contenido:
production: adapter: mysql database: redmine host: localhost username: redmine password: contraseniaquequieras encoding: utf8 socket: /var/run/mysqld/mysqld.sock
Ahora vamos a poblar la base de datos con la estructura propia de redmine y pasarla a modo producción:
servidor:~# rake db:migrate RAILS_ENV="production"
*** opcional***
servidor:~# rake redmine:load_default_data RAILS_ENV="production"
*** nos llena la db datos que vienen de fabrica ***
Por ultimo activamos el modulo, reiniciamos apache y debería salirnos Redmine al acceder con un navegador a http://redmine.dominio.tld
a2enmod passenger service apache2 restart /etc/init.d/apache2 restart
A gusto del consumidor 🙂
Si actualizamos a una versión mas nueva de Redmine, también hay que ejecutar
rake db:migrate RAILS_ENV=production