GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar y configurar Redmine en Ubuntu 18.04

Redmine es una de las herramientas de software de gestión de proyectos y seguimiento de problemas de código abierto más populares. Es multiplataforma y multibase de datos y está construido sobre el marco Ruby on Rails.

Redmine incluye soporte para múltiples proyectos, wikis, sistema de seguimiento de problemas, foros, calendarios, notificaciones por correo electrónico y mucho más.

Este tutorial describe cómo instalar y configurar la última versión de Redmine en un servidor Ubuntu 18.04 utilizando MySQL como back-end de base de datos y Passenger + Nginx como servidor de aplicaciones Ruby.

Requisitos previos #

Asegúrese de cumplir con los siguientes requisitos previos antes de continuar con este tutorial:

  • Tiene un nombre de dominio que apunta a la IP pública de su servidor. En este tutorial usaremos example.com .
  • Ha iniciado sesión como usuario con privilegios sudo.
  • Ha instalado Nginx siguiendo estas instrucciones.
  • Tienes un certificado SSL instalado para tu dominio. Puede instalar un certificado SSL gratuito de Let's Encrypt siguiendo estas instrucciones.

Creando base de datos MySQL #

Redmine es compatible con MySQL/MariaDB, Microsoft SQL Server, SQLite 3 y PostgreSQL. En este tutorial usaremos MySQL como back-end de base de datos.

Si aún no tiene MySQL instalado en su servidor Ubuntu, puede instalarlo siguiendo estas instrucciones.

Inicie sesión en el shell de MySQL escribiendo el siguiente comando:

sudo mysql

Desde el shell de MySQL, ejecute la siguiente instrucción SQL para crear una nueva base de datos:

CREATE DATABASE redmine CHARACTER SET utf8mb4;

A continuación, cree una cuenta de usuario de MySQL y otorgue acceso a la base de datos:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Asegúrate de cambiar change-with-strong-password con una contraseña segura.

Una vez hecho esto, salga de la consola mysql escribiendo:

EXIT;

Instalando Ruby #

La forma más fácil de instalar Ruby en su sistema Ubuntu es a través de apt gerente de empaquetación. Al momento de escribir este artículo, la versión en los repositorios de Ubuntu es 2.5.1, que es la última versión estable de Ruby.

Instale Ruby escribiendo:

sudo apt install ruby-full

Si desea instalar Ruby a través de Rbenv o RVM, consulte esta guía.

Instalando Pasajero y Nginx #

Passenger es un servidor de aplicaciones web rápido y liviano para Ruby, Node.js y Python que se puede integrar con Apache y Nginx. Instalaremos Passenger como un módulo Nginx.

Asegúrese de haber seguido los requisitos previos e instalado Nginx antes de continuar con los siguientes pasos.

Comience instalando los paquetes necesarios:

sudo apt install dirmngr gnupg apt-transport-https ca-certificates

Importe la clave GPG del repositorio y habilite el repositorio Phusionpassenger:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 561F9B9CAC40B2F7sudo add-apt-repository 'deb https://oss-binaries.phusionpassenger.com/apt/passenger bionic main'

Una vez que el repositorio apt esté habilitado, actualice la lista de paquetes e instale el módulo Passenger Nginx con:

sudo apt updatesudo apt install libnginx-mod-http-passenger

Instalando Redmine en Ubuntu #

Comenzaremos instalando las dependencias necesarias para compilar Redmine:

sudo apt install build-essential libmysqlclient-dev imagemagick libmagickwand-dev

Al momento de escribir este artículo, la última versión estable de Redmine es la versión 4.0.0.

Antes de continuar con el siguiente paso, debe consultar la página de descarga de Redmine para ver si hay una versión más nueva disponible.

1. Descargando Redmine #

Descarga el archivo de Redmine con el siguiente comando curl:

sudo curl -L http://www.redmine.org/releases/redmine-4.0.0.tar.gz -o /tmp/redmine.tar.gz

Una vez que se complete la descarga, extraiga el archivo y muévalo a /opt directorio:

cd /tmpsudo tar zxf /tmp/redmine.tar.gzsudo mv /tmp/redmine-4.0.0 /opt/redmine

2. Configuración de la base de datos de Redmine #

Comience copiando el archivo de configuración de ejemplo de Redmine:

sudo cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml

Abra el archivo con su editor de texto:

sudo nano /opt/redmine/config/database.yml

Busque la production e ingrese la base de datos MySQL y la información del usuario que creamos anteriormente:

/opt/redmine/config/database.yml
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "change-with-strong-password"
  encoding: utf8

Una vez hecho esto, guarde el archivo y salga del editor.

3. Instalación de dependencias de Ruby #

Navegue al directorio de redmine e instale el paquete y otras dependencias de Ruby:

cd /opt/redmine/sudo gem install bundler --no-rdoc --no-ri sudo bundle install --without development test postgresql sqlite

4. Generar claves y migrar la base de datos #

Ejecute el siguiente comando para generar claves y migrar la base de datos:

cd /opt/redmine/sudo bundle exec rake generate_secret_tokensudo RAILS_ENV=production bundle exec rake db:migrate

5. Establezca los permisos correctos #

Nginx se ejecuta como www-data usuario y grupo. Establezca los permisos correctos emitiendo el siguiente comando chown:

sudo chown -R www-data: /opt/redmine/

Configurar Nginx #

A estas alturas, ya debería tener Nginx con certificado SSL instalado en su sistema, si no, verifique los requisitos previos para este tutorial.

Abra su editor de texto y cree el siguiente archivo de bloque del servidor Nginx:

sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-available/example.com
# Redirect HTTP -> HTTPS
server {
    listen 80;
    server_name www.example.com example.com;

    include snippets/letsencrypt.conf;
    return 301 https://example.com$request_uri;
}

# Redirect WWW -> NON WWW
server {
    listen 443 ssl http2;
    server_name www.example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;

    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name example.com;

    root /opt/redmine/public;

    # SSL parameters
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;
    include snippets/letsencrypt.conf;

    # log files
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    passenger_enabled on;
    passenger_min_instances 1;
    client_max_body_size 10m;
}
No olvide reemplazar example.com con su dominio de Redmine y establezca la ruta correcta a los archivos del certificado SSL. Todas las solicitudes HTTP se redirigirán a HTTPS. Los fragmentos utilizados en esta configuración se crean en esta guía.

Habilite el bloqueo del servidor creando un enlace simbólico al sites-enabled directorio:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Antes de reiniciar el servicio Nginx, haga una prueba para asegurarse de que no haya errores de sintaxis:

sudo nginx -t

Si no hay errores, la salida debería verse así:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Finalmente, reinicie el servicio Nginx escribiendo:

sudo systemctl restart nginx

Accediendo a Redmine #

Abra su navegador, escriba su dominio y suponiendo que la instalación sea exitosa, aparecerá una pantalla similar a la siguiente:

Las credenciales de inicio de sesión predeterminadas para Redmine son:

  • Nombre de usuario:administrador
  • Contraseña:administrador

Cuando inicie sesión por primera vez, se le pedirá que cambie la contraseña como se muestra a continuación:

Una vez que cambie la contraseña, será redirigido a la página de la cuenta de usuario.


Ubuntu
  1. Cómo instalar y configurar Redis en Ubuntu 18.04

  2. Cómo instalar y configurar Samba en Ubuntu 18.04

  3. Cómo instalar y configurar Redis en Ubuntu 20.04

  4. Cómo instalar y configurar Jenkins en Ubuntu 20.04

  5. Cómo instalar y configurar Mariadb 10 en Ubuntu 20.04

Cómo instalar y configurar Neo4j en Ubuntu 20.04

Cómo instalar y configurar Ubuntu SDK en Ubuntu 16.04 y 14.04

Cómo instalar y configurar PostgreSQL en Ubuntu

Cómo instalar y configurar Hadoop en Ubuntu 20.04

Cómo instalar y configurar Jenkins en Ubuntu

Cómo instalar y configurar Jenkins en Ubuntu 20.04