How to install Redmine 1.3 on CentOS server with WHM/Cpanel.

How to install Redmine 1.3 on CentOS server with WHM/Cpanel.


This guide explains how to install Redmine on a server such as CentOS and WHM/CPanel. Unlike other distributions, we cannot configure Apache just like that since WHM has an internal template system for restoring the modified configuration files based on the server settings; this avoid troubles and provides great stability within production environments.

WHM is prepared to deploy Rails aplication that every user will be able to configure from his own CPanel. The only problem is that available (and needed) gems in WHM are not compatible with Redmine.

In order to set our application we are using Apache 2.2 together with phusion_passenger, besides Redmine 1.3 itself. So we firstly will get the required source code and then we will install Passenger. Let’s run over SSH the following commands:

cd /root/tmp
wget http://rubyforge.org/frs/download.php/75814/redmine-1.3.1.tar.gz
tar zxvf redmine-1.3.1.tar.gz
gem install passenger
passenger-install-apache2-module

Next step is to enable the Passenger module on Apache, we can do this from the Apache configuration panel when using WHM. Inside this panel we will find the “include editor” option and we are adding the following line to the previrtual-host selector:

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-3.0.11
PassengerRuby /usr/bin/ruby

and then we press Update. This should reboot Apache without errors. In case we get any error, the path may not be correct. We can use “find” to find out where is what.

Let’s come back to SSH and prepare our project, ready to be deployed:

cd /root/tmp/redmine-1.3.1/config
mv database.yml.example database.yml
cd ../public
mv dispatch.cgi.example dispatch.cgi
mv dispatch.fcgi.example dispatch.fcgi
mv dispatch.rb.example dispatch.rb
mv htaccess.fcgi.example .htaccess

Now we are editing our DB configuration file:

cd ..
nano config/database.yml

Obviously we need to create one DB on MySQL and besides, we recommend to create a fully privileged user only for this DB (not for any other). We can do that either from Cpanel, either from the MySQL shell.

Now we must prepare the gems for Redmine, but we firstly had to get an older version of RubyGems:

cd /root/tmp
wget http://production.cf.rubygems.org/rubygems/rubygems-1.4.2.tgz
tar zxvf rubygems-1.4.2.tgz
cd rubygems-1.4.2
ruby setup.rb

gem install bundler

Let’s create a ./Gemfile and add the following lines:

source "http://rubygems.org"
gem "rake", "0.8.3"
gem "rack", "1.1.0"
gem "i18n", "0.4.2"
gem "rubytree", "0.5.2", :require => "tree"
gem "RedCloth", "~>4.2.3", :require => "redcloth" # for CodeRay
gem "mysql"
gem "coderay", "~>0.9.7"

and run:

bundle install

Next we need to copy the Redmine folder to /home/public_html and change its name to “redmine”.

cp /root/tmp/redmine-1.3.1 /home/{user}/public_html/
mv /home/{user}/public_html/redmine-1.3.1 /home/{user}/public_html/redmine
cd /home/{user}/public_html/redmine
chown -R apache:apache ./
chmod -R 755 ./

And we are proceeding to synchronize our DB:

Let’s edit the config/environment.rb file and uncomment the following line:

ENV['RAILS_ENV'] ||= 'production'

Let’s run:

RAS_ENV=production bundle exec rake generate_session_store
RAILS_ENV=prodILuction bundle exec rake db:migrate
RAILS_ENV=production bundle exec rake redmine:load_default_data

This last step will allow us to choose our system language.

If we got here succesfully, we did the hardest part, the application is ready to use. It only needs to be launched on Apache by using passenger. As I told you earlier we cannot edit the main configuration files, but we can ask the system to include additional files created by ourselves through the following script:

/scripts/ensure_vhost_includes --user=[your_username]
/scripts/rebuildhttpdconf
/scripts/restartsrv_httpd

Once that is done, we can add some additional configuration files to the folder /etc/httpd/conf/userdata/std/2/ which end by “.conf”

For example, we are creating the file:
/etc/httpd/conf/userdata/std/2/redmine.conf on which we are writing:

RailsEnv productiond
RailsBaseURI /redmine

Allow from all
Options -MultiViews

Once Apache is restarted:

/etc/init.d/httpd restart

it should be available at this URL: domain_name/redmine

Previous Herramienta online para la conversión de videos. VEO Video Converter.
Next Buscando dominio y hosting: desmontando a Abansys.

About author

PedroSP
PedroSP 3 posts

Nací en Ibiza, pero me transladé muy pequeño a Atarfe (Granada). Estudiante de Ingeniería técnica en informática de Sistemas. Defensor a ultranza del software libre, el conocimiento libre y el pensamiento crítico. Amante de las ciencias, la economía, la informática y el mundo de los negocios. Republicano de corazón.

You might also like

Tecnologia & Ciencia 0 Comments

¿Dónde está mi cámara robada?

¿Estando de excursión o haciendo turismo en algún lugar del mundo, te has llevado la sorpresa al echar mano de tu cámara de fotos que no estaba donde la habías dejado?

Tecnologia & Ciencia 0 Comments

Atajos Linux: cómo averiguar qué servicios corren en un determinado puerto

En Linux existen múltiples formas de averiguar qué servicios están escuchando un determinado puerto TCP o UDP. Aquí sólo nos vamos a centrar en las más rápidas, que Internet ya está lleno de

Desarrollo 1Comments

Monsta, un cliente web FTP gratuito y abierto

¿Que es Monsta FTP? Es un cliente FTP de código abierto que puedes instalar fácilmente en cualquier servidor web. Está programado en PHP/Ajax y es muy sencillo de desplegar (sólo 2

Tecnologia & Ciencia 1Comments

Android Device Manager: la aplicación antirrobo integrada en Android

¡Aleluya! ¡Nuestras plegarias han sido escuchadas! No exagero, una plataforma como Android no se podía permitir una carencia de este tipo durante tanto tiempo. Como usuario de Android, veía con

Telecomunicaciones 1Comments

Troposcatter: radioenlaces más allá del Horizonte (Parte I)

— Lamento que le haya tocado a Usted el diseño de ese endemoniado enlace — dijo el coronel Volkov , responsable del proyecto —. ¿Cuáles son sus conclusiones? El proyecto

Tecnologia & Ciencia 1Comments

¿Durante cuánto tiempo tengo que apuntar a la Luna (con un láser) para conseguir ver un punto?

Si apuntamos a la Luna con un puntero láser desde la Tierra, ¿alguien que estuviera allí podría ver el punto de su proyección sobre la superficie? Es más, ¿podríamos verlo desde

Tecnologia & Ciencia 0 Comments

¿Y si pudieras pagar en el supermercado utilizando tu smartphone?

Imagínense que fuera posible pagar la compra de la semana sólo con acercar el móvil al datáfono del supermercado. Bueno, pues en esta coyuntura tecnológica ya se puede. ¿Sorprendido? Seguro

Tecnologia & Ciencia 1Comments

Abran los ojos de una maldita vez, la piratería no es el problema

Este es uno de los artículos que a nadie le gustaría escribir. Pero tristemente es la realidad y me veo obligado a hacerlo para mostrar que conforme pasa el tiempo

Tecnologia & Ciencia 0 Comments

7 herramientas online de productividad para ahorrar tiempo

El ritmo de vida en el siglo XXI nos está matando. Y todo mientras tratamos de rascar algunos minutos extra a unas 24h que tan cortas se nos quedan. Qué

5 Comments

  1. […] How to install Redmine 1.3 on CentOS server with WHM … – How to install Redmine 1.3 on CentOS server with WHM/Cpanel. This guide explains how to install Redmine on a server such as CentOS and WHM/CPanel. […]

  2. […] por eso creemos que ha llegado la hora de publicar también en inglés. Ya lo habíamos hecho con algún que otro artículo, pero de ahora en adelante traduciremos nuestras entradas más populares y también las que […]

  3. Angel
    Junio 17, 17:29 Reply

    FLB, como dice PedroSP, este artículo lo escribió el mismo en castellano como fruto de su esfuerzo y quebraderos de cabeza. Yo mismo me encargué de traducirlo a inglés.

    Los artículos de este blog los registramos con licencia CC. Si has visto alguna reproducción (total o parcial) en alguna otra parte te ruego nos lo comuniques para tomar las medidas necesarias. Gracias por leernos y saludos!

  4. PedroSP
    Junio 13, 02:01 Reply

    Buenas FLB, quizás no te hayas dado cuenta que lo tenemos también en castellano, de hecho esto es una traducción al inglés de mi artículo en castellano, para ser introducido en la página oficial. Lo tienes aquí: https://borrowbits.com/2012/05/instalar-redmine-1-3-en-servidor-centos-con-whmcpanel/#comment-170
    Entiendo que lo que quieres decir es que da aspecto de ser un copy paste, no que nos estés acusando de eso, ya que en ese lugar te invitaría a que buscaras por internet a ver de dónde nos hemos copiados. Quizás no entiendas el hecho de que en este blog haya artículos en diferentes idiomas.
    Este artículo lo escribí después de tirarme una semana intentando instalar redmine en CentOS, no encontré ningún tutorial en condiciones así que tuve que ingeniármelas un poco y probar muchas cosas hasta que di con la tecla. Después de este proceso, antes de que se me olvidara todo, decidí escribir el artículo para que en un futuro otros puedan aprender de él.

  5. FLB
    Junio 13, 00:34 Reply

    ¿Por qué lo ponéis en inglés sólo?. Se traducirlo perfectamente pero es que parece un copy/paste de la página de ayuda oficial en serio. Lo digo como mensaje constructivo. Por lo demás, está interesante el manual.

Leave a Reply