GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Redmine 3.2 con Nginx en Ubuntu 16.04

Redmine es una herramienta de gestión de proyectos y seguimiento de problemas de código abierto basada en Ruby on Rails Framework. Está basado en la web, por lo que puede usarlo desde cualquier plataforma de cliente que proporcione un navegador web. Es muy adecuado para equipos multilingües, ya que contiene traducciones para 42 idiomas. Puede realizar un seguimiento de varios proyectos en una sola instalación, tiene un soporte integrado para noticias, gestión de documentos, gestión de archivos, un wiki de soporte. Puede conectarlo con otras aplicaciones mediante la autenticación LDAP y la API REST.

Este tutorial cubre la instalación de Redmine 3.2 con el servidor web Nginx y el servidor de base de datos MySQL en el sistema operativo Ubuntu 16.04 (64 bits).

Requisitos

  • Ubuntu 16.04 - 64 bits.
  • Privilegios de raíz.

Paso 1 - Instalar dependencias

Redmine tiene muchas dependencias pero podemos instalarlas fácilmente con apt. El primer paso es convertirse en usuario root y luego actualizar su repositorio de Ubuntu. Todos los pasos posteriores de este tutorial se ejecutan como usuario raíz, por eso uso "sudo su" en lugar de anteponer sudo a cada comando.

sudo su
apt-get update

Instale las dependencias de Redmine con el siguiente comando apt:

apt-get install mysql-server mysql-client libmysqlclient-dev imagemagick libmagickwand-dev libcurl4-openssl-dev git-core subversion

El instalador le pedirá una nueva contraseña raíz de MySQl, ingrese allí una contraseña nueva y segura de MySQL.

Paso 2:instalar Ruby y RVM

En este paso, instalaremos la última versión de RVM y Ruby 2.2. Redmine 3.2 estable es compatible con la versión 2.2 de Ruby, por lo que podemos usarlo aquí. RMV (Ruby Version Manager) es una práctica herramienta de línea de comandos que le permite instalar, administrar y trabajar con múltiples entornos de Ruby.

gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby=2.2.5

Ahora tenemos que recargar RVM y agregarlo a .bashrc para la recarga automática:

source /usr/local/rvm/scripts/rvm
echo '[[ -s "/usr/local/rvm/scripts/rvm" ]] && source "/usr/local/rvm/scripts/rvm"' >> ~/.bashrc

Paso 3:configurar la base de datos MySQL para Redmine

Crearemos una base de datos y un usuario de base de datos para la instalación de Redmine. Inicie sesión en el shell de MySQL con el usuario root y su contraseña:

mysql -u root -p
TYPE YOUR PASSWORD

Luego, cree una nueva base de datos llamada "redmine" y un nuevo usuario con el nombre 'redmine' con la contraseña 'redmine' (use una mejor contraseña en su instalación, este es solo un ejemplo), y luego otorgue los privilegios para el usuario 'redmine' a la base de datos 'redmine'.

create database redmine;
create user [email protected] identified by 'redmine';
grant all privileges on redmine.* to [email protected] identified by 'redmine';
flush privileges;
q\

Se crean la base de datos y el usuario. ¡Utilice una contraseña segura en su servidor!

Paso 4:instalar Phusion Passenger y Nginx

Phusion Passenger es un servidor web y de aplicaciones que se puede integrar con los servidores web Apache y Nginx. Admite múltiples lenguajes como Ruby, Python y Nodejs. Es fácil de usar, rápido y mejora la seguridad de la instalación.

En esta parte, instalaremos Phusion Passenger y lo integraremos con Nginx. Redmine se ejecutará bajo el servidor web Nginx. Instale Passenger con el comando gem y luego instale el módulo Passenger-nginx.

gem install passenger --no-ri --no-rdoc
passenger-install-nginx-module

El comando le preguntará sobre el idioma que se admitirá, seleccione Ruby y Python aquí .

Se le preguntará acerca de la instalación de Nginx, seleccione "Sí:descargue, compile e instale Nginx por mí. (recomendado) ".

Finalmente, se le preguntará sobre el directorio de instalación de Nginx, use el predeterminado '/opt/nginx/' y presiona "Entrar ".

Paso 5:configurar Nginx

Vaya al directorio de instalación y edite el archivo nginx.conf con un editor, aquí usaré el editor vim.

cd /opt/nginx/conf/
vim nginx.conf

Pegue la línea de configuración a continuación en el archivo:

include vhost/*.conf;

Guardar y salir.

A continuación, cree un nuevo directorio 'vhost' para la configuración del host virtual.

mkdir -p /opt/nginx/conf/vhost

Vaya al directorio vhost y cree un archivo de configuración de host virtual redmine con vim:

cd /opt/nginx/conf/vhost/
vim redmine.conf

Pegue la configuración de host virtual a continuación:

    server {
        listen       80;
        server_name  www.redmine.me;

        root /var/www/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;
        }
    }

Guardar y salir.

A continuación, configuraremos Nginx para que se inicie con systemd. Vaya al directorio systemd y cree un nuevo archivo de servicio 'nginx.service'.

cd /lib/systemd/system/
vim nginx.service

Pegue el script Nginx para systemd a continuación:

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Guarde el archivo y salga.

Vuelva a cargar los servicios de systemd e intente iniciar Nginx con el comando systemctl:

systemctl daemon-reload
systemctl start nginx

Si desea verificar Nginx, verifique el puerto 80 abierto con netstat:

netstat -plntu | grep nginx

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      4871/nginx

Paso 6 - Instalar Redmine

Cree un nuevo directorio para la instalación de Redmine, usaré el directorio '/var/www/' aquí.

mkdir -p /var/www/

Vaya al directorio '/var/www/' y descargue redmine con el comando svn:

cd /var/www/
svn co https://svn.redmine.org/redmine/branches/3.2-stable redmine

Ingrese al directorio de redmine y copie el archivo de configuración y el archivo de configuración de la base de datos:

cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

Luego edite el archivo base de datos.yml con vim:

vim config/database.yml

En la línea de producción, complete los detalles de la base de datos, el usuario de la base de datos y la contraseña. Utilice los detalles de la base de datos que creó en el capítulo 3.

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "redmine"
  encoding: utf8

Guarde el archivo y salga del editor.

En el directorio de redmine, cree un nuevo directorio y cambie el propietario a www-data:

mkdir -p tmp tmp/pdf public/plugin_assets
sudo chown -R www-data:www-data files log tmp public/plugin_assets
sudo chmod -R 775 files log tmp public/plugin_assets

Luego instale el paquete y las dependencias de gemas para Redmine:

gem install bundler
bundle install --without development test

Ahora genere el token secreto y luego genere la base de datos:

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

Reinicie Nginx y visite el dominio de redmine con un navegador web:

systemctl restart nginx

Visite la instalación de redmine, en mi caso:www.redmine.me

Inicie sesión en la página de administración:www.redmine.me/login

El usuario y la contraseña predeterminados son 'admin'.

Crear nuevo proyecto de muestra.

Ejemplo de página de proyecto.

La instalación de Redmine con Nginx y MySQL ha finalizado con éxito.

Conclusión

Redmine es una aplicación basada en web para la gestión de proyectos y el seguimiento de problemas. Redmine es una aplicación multiplataforma, por lo que podemos ejecutarla en Windows, Linux y Mac OS. Admite diferentes bases de datos como MySQL, PostgreSQL, Microsoft SQL Server y SQLite. Redmine es fácil de instalar y configurar, podemos usar Apache o Nginx como servidor web. Redmine es muy potente y tiene muchas funciones, como compatibilidad con varios idiomas, administración de archivos, wiki y una API REST. Redmine es una de las mejores soluciones OpenSource para crear su propia gestión de proyectos con seguimiento de problemas.


Ubuntu
  1. Cómo instalar WordPress con Nginx en Ubuntu 18.04

  2. Cómo instalar phpMyAdmin con Nginx en Ubuntu 18.04

  3. Cómo instalar MediaWiki con Nginx en Ubuntu 16.04

  4. Cómo instalar Grav CMS con Nginx en Ubuntu 16.04

  5. Cómo instalar PHP 7.4 con Nginx en Ubuntu 20.04

Cómo instalar WordPress 5.x con Nginx en Ubuntu 18.04 / Ubuntu 16.04

Cómo instalar WordPress con Nginx en Ubuntu

Cómo instalar Nextcloud 13 en Ubuntu 16.04 con Nginx

Cómo instalar WonderCMS en Ubuntu 20.04 (con Nginx)

Cómo instalar Redmine en Ubuntu 20.04

Cómo instalar Nginx en Ubuntu 15.04