Cómo instalar la herramienta de gestión de proyectos Redmine en Ubuntu 22.04



Redmine es una útil gratuita y de código descubierto para la mandato de proyectos y el seguimiento de incidencias. Es un software de aplicación basado en web, escrito principalmente en Ruby on Rails. Es multiplataforma y admite varias bases de datos y varios idiomas.

Redmine es flexible y puede utilizarse para distintos tipos de organizaciones y proyectos, desde pequeñas, medianas o grandes organizaciones. Te permite crear y tramitar múltiples proyectos, y cada tesina tiene su propia Wiki, Foros, seguimiento de incidencias, etc. Por otra parte, te permite crear roles personalizados en función de las deyección de tu ordenamiento, y muchas cosas más.

Redmine se publica bajo abuso GNU GPL v2 y puede instalarse en cualquier sistema eficaz, como Linux, Windows o macOS. Admite distintos tipos de bases de datos, como PostgreSQL, MySQL y SQLite (por defecto).

En esta callejero, instalarás Redmine con el servidor web Apache2 y el servidor MySQL en un servidor Ubuntu 22.04. Asimismo asegurarás la instalación de Redmine con certificados SSL.

Requisitos previos

Este tutorial requiere los siguientes requisitos

  • Un servidor Ubuntu 22.04 – Este ejemplo utiliza un servidor Ubuntu con el nombre de host redmine-server.
  • Un sucesor no root con privilegios de root sudo – Pero incluso puedes utilizar el sucesor root.
  • Un nombre de dominio apuntando a la dirección IP de tu servidor – Para la producción, debes asegurarte de que tu nombre de dominio apunta a la dirección IP de tu servidor.

Una vez que tengas todo presto, ya puedes proceder al primer paso de la instalación de Redmine.

Instalación de dependencias

Redmine es una útil de mandato de proyectos y seguimiento de incidencias de código descubierto escrita principalmente en Ruby y Ruby on Rails (RoR). Para instalar Redmine, primero debes instalar Ruby, luego puedes instalar otras dependencias como el servidor web Apache2 y la pulvínulo de datos mediante el servidor MySQL.

En este ejemplo, ejecutarás Redmine con el servidor web Apache2 y el servidor MySQL.

Antaño de abrir a instalar los paquetes, ejecuta el próximo comando apt para modernizar y refrescar el índice de paquetes de Ubuntu.

sudo apt update

Una vez actualizado el repositorio, instala algunas de las siguientes dependencias de paquetes mediante el comando apt que aparece a continuación.

Con este comando, instalarás el servidor web Apache2 seguido del linapache2-mod-passenger que se utilizará para configurar la aplicación RoR para que se ejecute bajo Apache2. Asimismo instalarás paquetes Ruby.

sudo apt install apache2 ruby ruby-dev build-essential libapache2-mod-passenger libmysqlclient-dev

Cuando se te pida que confirmes la instalación, introduce y y pulsa ENTER para continuar.

instalar dependencias

Una vez instalados Apache2 y Ruby, ejecuta el próximo comando para instalar el servidor MySQL. Redmine admite varios RDBMS como PostgreSQL, MySQL/MariaDB y SQLite. en este ejemplo utilizarás el servidor MySQL.

sudo apt install mysql-server

Introduce y cuando se te pida que confirmes la instalación, y pulsa INTRO para continuar.

instalar mysql

Para la instalación de Redmine, incluso necesitarás instalar un bundler en tu servidor Ubuntu. bundler es una recorrido de comandos que se utilizará para tramitar los paquetes Ruby Gems.

Ejecuta el próximo comando para instalar un bundler en tu sistema.

sudo gem install bundler

Una vez instalado el bundler, verás una salida como la próximo:

instalar bundler

Por final, verifica los servicios Apache2 y MySQL mediante el próximo comando systemctl. Así te asegurarás de que los servicios Apache2 y MariaDB se están ejecutando y están habilitados.

Verifica el servicio Apache2.

sudo systemctl is-enabled apache2
sudo systemctl status apache2

A continuación puedes ver que el servicio Apache2 está competente y se ejecutará automáticamente al acelerar el sistema. Y el estado presente del servicio es en ejecución.

comprobar apache2

Verifica el servicio MySQL.

sudo systemctl is-enabled mysql
sudo systemctl status mysql

Verás una salida similar a la próximo – El servicio MySQL está competente y se ejecutará automáticamente al acelerar el sistema. Y el estado presente del servicio MySQL es en ejecución.

comprobar mysql

Configurar el servidor MySQL

Una vez instalados Apache2 y el servidor MySQL, configurarás la contraseña raíz de MySQL y asegurarás la instalación mediante mysql_secure_installation. A continuación, incluso crearás una nueva pulvínulo de datos MySQL y un nuevo sucesor para Redmine.

Accede a MySQL mediante el comando mysql que aparece a continuación.

sudo mysql

Ahora cambia la contraseña raíz de MySQL mediante la próximo consulta. Y asegúrate de cambiar la contraseña por la tuya. A continuación, escribe quit para salir del intérprete de comandos MySQL.

ALTER USER [email protected] IDENTIFIED WITH mysql_native_password BY 'password';
quit

cambiar contraseña raíz

A continuación, ejecuta el próximo comando para abrir a apuntalar la implementación del servidor MySQL.

sudo mysql_secure_installation

Cuando se te pida la contraseña raíz de MySQL, introduce tu contraseña correcta.

A continuación, se te pedirán otras configuraciones de MySQL, como desactivar el inicio de sesión remoto para el sucesor root, eliminar el sucesor secreto, eliminar la prueba de pulvínulo de datos predeterminada y recargar todos los privilegios de las tablas. Para todas esas configuraciones del servidor MySQL, introduce Y para confirmar la configuración.

Tras apuntalar el despliegue de MySQL, es hora de configurar una nueva pulvínulo de datos y un nuevo sucesor para Redmine.

Accede al shell de MySQL mediante el comando mysql que se indica a continuación. Se te pedirá la contraseña raíz de MySQL, introduce la contraseña correcta para tu sucesor raíz de MySQL y pulsa INTRO.

sudo mysql -u root -p

Ahora ejecuta las siguientes consultas para crear una nueva pulvínulo de datos MySQL y un nuevo sucesor para Redmine. En este ejemplo, crearás una nueva pulvínulo de datos y un nuevo sucesor redmine con la contraseña‘secretPassword‘. Puedes sustituir la contraseña de la pulvínulo de datos por tu contraseña.

CREATE DATABASE redmine CHARACTER SET utf8mb4;
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'secretPassword';
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
FLUSH PRIVILEGES;

crear db y usuario

A continuación, ejecuta las siguientes consultas para compulsar los privilegios del sucesor MySQL redmine. Asegúrate de que el sucesor MySQL redmine tiene privilegios sobre la pulvínulo de datos redmine.

SHOW GRANTS FOR [email protected];
quit

A continuación puedes ver el sucesor MySQL [email protected] con privilegios para la pulvínulo de datos redmine.

comprobar privilegios

Por final, escribe quit para cerrar la sesión en el intérprete de comandos MySQL.

Con todas las dependencias instaladas, y la pulvínulo de datos MySQL y el sucesor creados, estás presto para instalar la útil de mandato de proyectos Redmine en tu servidor Ubuntu.

Instalar Redmine

En este paso, instalarás la última lectura de Redmine. En el momento de escribir esto, la última lectura de Redmine es la v5.0.2.

Descargarás el código fuente de Redmine, configurarás la pulvínulo de datos, instalarás las dependencias de Ruby mediante la compilación, configurarás el token secreto de Redmine y migrarás la pulvínulo de datos.

En este ejemplo, instalarás Redmine en el directorio /opt/redmine.

Desplázate al directorio /opt.

cd /opt/

Ahora, descarga el código fuente de Redmine con el próximo comando wget. Una vez descargado, verás el archivo redmine-5.0.2.tar.gz en tu directorio /opt.

wget https://www.redmine.org/releases/redmine-5.0.2.tar.gz

A continuación, ejecuta el próximo comando para extraer el código fuente de Redmine redmine-5.0.2.tar.g z y crea un nuevo enlace simbólico para el directorio de Redmine a /opt/redmine.

tar -xvzf redmine-5.0.2.tar.gz
sudo ln -s redmine-5.0.2 redmine

El directorio principal de instalación de Redmine será /opt/redmine.

Desplázate al directorio /opt/redmine.

cd /opt/redmine/

Copia la configuración por defecto de la pulvínulo de datos ‘config/database.yml.example’ en ‘config/database.yml’. A continuación, abre el archivo de configuración de la pulvínulo de datos ‘config/database.yml’ con el editor nano.

cp config/database.yml.example config/database.yml
nano config/database.yml

copiar la configuración de la base de datos

En la sección ‘producción’, cambia los detalles de la pulvínulo de datos MySQL y el sucesor. Asegúrate de utilizar el sucesor de la pulvínulo de datos y la contraseña correctos para Redmine.

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "secretPassword" 
  # Use "utf8" instead of "utfmb4" for MySQL prior to 5.7.7
  encoding: utf8mb4

Cuidado el archivo y sal del editor cuando hayas terminado.

A continuación, ejecuta el próximo comando bundler para instalar las dependencias de Ruby para la aplicación Redmine.

bundle config set --local without 'development test'
bundle install

Verás una salida similar a la próximo:

instalar dependencias

Una vez instaladas las dependencias de Redmine, ejecuta el próximo comando para originar el token secreto de Redmine y portar la pulvínulo de datos.

bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate

En la próximo captura de pantalla, puedes ver que se genera el token secreto de Redmine y el proceso de migración de la pulvínulo de datos de Redmine.

migrar base de datos

Por final, carga el predeterminado en tu instalación de Redmine con el próximo comando. Cuando se te pida que elijas el idioma, introduce en como para Inglés.

RAILS_ENV=production bundle exec rake redmine:load_default_data

Cuando se carguen los datos por defecto de Redmine, verás el mensaje de salida como«Datos de configuración por defecto cargados«.

cargar datos por defecto

Ahora que Redmine está instalado, a continuación configurarás un host posible Apache2 para Redmine.

Configurar un host posible para Redmine

En este paso, crearás una nueva configuración de host posible Apache2 para Redmine. Así que asegúrate de que tienes el nombre de dominio que apunta a la dirección IP de tu servidor y de que se han generado los certificados SSL.

Ejecuta el próximo comando para habilitar los módulos ssl y reescritura de Apache.

sudo a2enmod ssl rewrite

Verás la salida como la próximo:

activar módulos apache2

Ahora, crea una nueva configuración de host posible Apache2‘/etc/apache2/sites-available/redmine.conf‘ utilizando el editor nano.

sudo nano /etc/apache2/sites-available/redmine.conf

Añade la próximo configuración al archivo. Y asegúrate de cambiar el nombre de dominio y la ruta de los certificados SSL con tu configuración.

<VirtualHost *:80>
ServerName redmine.hwdomain.io
ServerAdmin [email protected]

# Redirect Requests to SSL
Redirect permanent "/" "https://redmine.hwdomain.io/"

</VirtualHost>

<IfModule mod_ssl.c>

<VirtualHost *:443>

ServerName redmine.hwdomain.io
RailsEnv production
DocumentRoot /opt/redmine/public

ErrorLog ${APACHE_LOG_DIR}/redmine.hwdomain.io.error.log
CustomLog ${APACHE_LOG_DIR}/redmine.hwdomain.io.access.log combined

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/redmine.hwdomain.io/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/redmine.hwdomain.io/privkey.pem

<Directory "/opt/redmine/public">
Allow from all
Require all granted
</Directory>

</VirtualHost>

</IfModule>

Cuidado el archivo y sal del editor.

A continuación, ejecuta el próximo comando para activar el archivo de host posible‘redmine.conf‘. A continuación, verifica tu configuración de Apache2 para asegurarte de que tienes la configuración adecuada.

sudo a2ensite redmine.conf
sudo apachectl configtest

Ahora obtendrás el mensaje de salida«Sintaxis OK» cuando tengas la configuración adecuada de Apache2.

configurar apache vhost

Por final, reinicia el servicio Apache2 mediante el próximo comando systemctl para aplicar el nuevo archivo de host posible.

sudo systemctl restart apache2

En este punto, Redmine está instalado y el host posible está configurado. Ahora deberías conseguir a tu instalación de Redmine a través de tu nombre de dominio.

Configurar el cortafuegos UFW

En producción, debes activar el cortafuegos. Para el sistema Ubuntu, puedes utilizar el cortafuegos por defecto UFE (Uncomplicated Firewall).

Ahora, añadirás reglas UFW que abran los servicios HTTP y HTTPS por defecto para que Redmine sea accesible desde fuera de la red.

Ejecuta el próximo comando ufw para añadir el perfil de aplicación por defecto«OpenSSH» al UFW. A continuación, inicia y activa el cortafuegos de la UFW.

sudo ufw allow "OpenSSH"
sudo ufw enable

Cuando te pida confirmación, introduce y para iniciar y habilitar el servicio de cortafuegos UFW.

permitir ssh

A continuación, ejecuta el próximo comando para añadir el perfil de aplicación«Apache Full» al cortafuegos. A continuación, comprueba el estado del UFW mediante el próximo comando.

sudo ufw allow "Apache Full"
sudo ufw status

Deberías ver que el estado del cortafuegos UFW está activo y que los perfiles de aplicación actualmente habilitados son OpenSSH y «Apache Full». Esto abrirá el puerto SSH 22 por defecto y los puertos 80 y 443 de los servicios HTTP y HTTPS.

comprobar ufw

Instalación de Redmine

Abre el navegador web y turista el nombre de dominio de tu instalación de Redmine (es sostener: https://redmine.hwdomain.io/).

Ahora verás la página de inicio por defecto de la útil de mandato de proyectos y seguimiento de incidencias Redmine. Haz clic en«Iniciar sesión» para conseguir al panel de sucursal de Redmine.

página principal redmine

Introduce el sucesor y contraseña predeterminados de sucursal de Redmine«adminadmin«.

inicio de sesión

Una vez que hayas iniciado sesión, se te pedirá que cambies la contraseña predeterminada de Redmine. Introduce la nueva contraseña para tu instalación de Redmine y haz clic en«Aplicar«.

cambiar contraseña

Por final, edita los datos de tu sucesor administrador de Redmine y haz clic en «Asegurar» para aplicar las configuraciones. Ya has configurado la pulvínulo de Redmine.

cambiar usuarios

Para añadir un nuevo tesina, haz clic en el menú«Proyectos«. Deberías poder crear, editar o eliminar Proyectos en tu Redmine.

lista de proyectos

Ahora, si quieres añadir configuraciones a Redmine, haz clic en el menú «Delegación«. Con eso, puedes añadir más usuarios, configurar grupos, delimitar roles, habilitar la autenticación a través de una aplicación de terceros como LDAP, y muchas cosas más.

administración

Conclusión

En este tutorial, has instalado y configurado la útil de mandato de proyectos y seguimiento de incidencias Redmine en el servidor Ubuntu 22.04. Asimismo has configurado la pulvínulo de datos MariaDB y el servidor web Nginx para Redmine. Por otra parte, incluso has asegurado la instalación de Redmine con certificados SSL.

Ahora que tienes Redmine instalado en tu sistema, puedes ampliar tu instalación de Redmine añadiendo algunas configuraciones adicionales, como integrar Redmine en tus infraestructuras actuales, como añadir autenticaciones LDAP, e integrarlo con SCM como SVN, Git y Mercurial. Por otra parte, puedes añadir roles según tu ordenamiento o empresa.