En este tutorial, le mostraremos cómo instalar Redmine en su servidor CentOS 7. Para aquellos de ustedes que no sabían, Redmine es una aplicación web de administración de proyectos que permite a los usuarios administrar proyectos de manera flexible mientras ofrece herramientas de monitoreo sólidas y una amplia biblioteca de complementos. Esta solución gratuita y de código abierto ofrece un sustituto para las herramientas de administración de trabajos pagas y contiene soporte para wikis, foros, calendarios y programas de visualización de información.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré paso a paso la instalación de la aplicación web de administración de proyectos de Redmine en un CentOS 7.
Instalar Redmine en CentOS 7
Paso 1. Primero, comencemos asegurándonos de que su sistema esté actualizado.
yum clean all yum -y install epel-release yum -y update
Paso 2. Instalar todas las dependencias.
Instalar todas las dependencias requeridas por Redmine:
yum install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel ftp wget ImageMagick-devel gcc-c++ patch readline readline-devel zlib libyaml-devel libffi-devel make bzip2 autoconf automake libtool bison iconv-devel subversion
Paso 3. Instalación de Ruby y RVM.
Redmine requiere Ruby. Por lo tanto, primero querrá instalar Ruby Version Manager, que permite administrar varios entornos de Ruby:
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 curl -L https://get.rvm.io | bash -s stable --ruby=2.2.5
Ahora tenemos que agregar el archivo .bashrc para que pueda recargarse automáticamente y para agregarlo al archivo .bashrc ejecute esto:
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc
Vuelva a cargar el archivo .bashrc usando este comando:
source ~/.bashrc
Ahora ejecute el siguiente comando como se muestra a continuación para verificar la versión de Ruby y RVM:
ruby -v rvm -v
Paso 4. Instalación del servidor MySQL.
Se debe configurar MySQL para que Redmine pueda almacenar datos, por lo que instalaremos el servidor MySQL:
rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm yum repolist yum install mysql-server
Ahora inicie mysqld
servicio usando systemctl
comando como se muestra a continuación:
systemctl start mysqld
De forma predeterminada, MySQL no está reforzado. Puede proteger MySQL usando mysql_secure_installation
texto. Debe leer y seguir cada paso cuidadosamente, que establecerá una contraseña raíz, eliminará a los usuarios anónimos, no permitirá el inicio de sesión raíz remoto y eliminará la base de datos de prueba y el acceso a MySQL seguro.
mysql_secure_installation
Configúralo así:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
A continuación, debemos iniciar sesión en la consola MySQL y crear una base de datos para Redmine. Ejecute el siguiente comando:
mysql -u root -p
Esto le pedirá una contraseña, así que ingrese su contraseña raíz de MySQL y presione Enter. Una vez que haya iniciado sesión en su servidor de base de datos, debe crear una base de datos para Instalación de Redmine:
CREATE DATABASE redmin GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; \q
Paso 5. Instalación de Passenger y Nginx.
Passenger es un servidor de aplicaciones que ejecuta su aplicación web y luego se comunica con el servidor web. Lo instalaremos y lo integraremos con Nginx:
gem install passenger --no-ri --no-rdoc passenger-install-nginx-module
Se le pedirá información y luego instalará Nginx. El directorio de instalación predeterminado es /opt/nginx
. Por supuesto, puedes cambiarlo. En él, edite nginx.conf
.
En la línea 23, pegue el siguiente contenido:
include vhost/*.conf;
Guarde y cierre el archivo. A continuación, cree un directorio vhost para los archivos de configuración del host virtual:
mkdir -p /opt/nginx/conf/vhost
En este directorio, cree un archivo Redmine.conf. Luego pegue lo siguiente en ese archivo:
server { listen 80; server_name yourdomain.com; root /var/www/html/redmine/public; passenger_enabled on; client_max_body_size 10m; # Max attachemnt size # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
Reinicie el servidor web para que los cambios surtan efecto:
systemctl restart nginx systemctl enable nginx
Paso 6. Instalación de Redmine.
Primero, descarga la última versión de Redmine, al momento de escribir este artículo es la versión 3.4:
cd /var/www/ svn co http://svn.redmine.org/redmine/branches/3.4-stable redmine
A continuación, cambie el directorio de trabajo actual y los archivos de configuración de ejemplo:
cd redmine cp config/configuration.yml.example config/configuration.yml cp config/database.yml.example config/database.yml
Realice los siguientes cambios en el archivo base de datos.yml:
nano config/database.yml
Agregue el siguiente contenido:
production: adapter: mysql2 database: redmine host: localhost username: redmine password: PASSWORD encoding: utf8
Ejecute los siguientes comandos para cambiar el propietario a usuario y grupo nadie:
mkdir -p tmp tmp/pdf public/plugin_assetssud chown -R nobody:nobody files log tmp public/plugin_assetssudo chmod -R 775 files log tmp public/plugin_assets
Instalar el paquete y las dependencias de gemas para Redmine:
gem install bundlerbundle install --without development test
Genera el token secreto usando el siguiente comando:
bundle exec rake generate_secret_token RAILS_ENV=production bundle exec rake db:migrate RAILS_ENV=production bundle exec rake redmine:load_default_data
Finalmente, reinicie el servidor web Nginx para que los cambios surtan efecto:
systemctl restart nginx
Paso 7. Acceso a Redmine.
Redmine estará disponible en el puerto HTTP 80 de forma predeterminada. Abra su navegador favorito y vaya a http://mydomain.com
y complete los pasos necesarios para finalizar la instalación utilizando las credenciales predeterminadas (admin/admin). Si está utilizando un firewall, abra el puerto 80 para habilitar el acceso al panel de control.
¡Felicitaciones! Ha instalado correctamente Redmine. Gracias por utilizar este tutorial para instalar la aplicación web de gestión de proyectos de Redmine en sistemas CentOS 7. Para obtener ayuda adicional o información útil, le recomendamos que consulte la Sitio web de Redmine.