Cómo instalar Redmine en Rhel 8 / Centos 8 Linux

Cómo instalar Redmine en Rhel 8 / Centos 8 Linux

RedMine es una popular aplicación web de administración de proyectos de código abierto. Admite bases de datos de alcalde como MySQL y PostgreSQL como backend, y también puede cambiar el frontend a Apache desde el servidor web de Webrick (recomendado para uso de producción) enviado con la instalación. En este artículo instalaremos la última Redmine en Rhel 8 / Centos 8, utilizando PostgreSQL como backend, pero dejaremos el Webrick predeterminado como frontend, que servirá a nuestras pruebas perfectamente.

No espere que este proceso sea fácil, ni sin errores. Incluso siguiendo estos pasos a la carta, seguramente ocurrirán algunos errores, la configuración parece manejar sudo Pasos de manera algo inconsistente, pero también se incluyen las soluciones que guiarán a través de estos errores.

En este tutorial aprenderás:

  • Cómo instalar paquetes de sistema operativo requeridos
  • Cómo configurar la base de datos
  • Cómo instalar la aplicación RedMine
  • Cómo iniciar e iniciar sesión en la aplicación
Página de configuración de Redmine en RHEL 8.

Requisitos y convenciones de software utilizados

Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema RHEL 8 / CENTOS 8
Software Redmine 4.0.3, PostgreSQL 10.5
Otro Acceso privilegiado a su sistema Linux como root o a través del sudo dominio.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
ps - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Cómo instalar RedMine en Redhat 8 instrucciones paso a paso

Redmine es una aplicación Ruby. Para la instalación tendremos que usar rubygems y aglutinante, y compilar muchas dependencias, por lo que llevará un tiempo. Utilizaremos los repositorios de Red Hat disponibles después de habilitar la gestión de suscripción para resolver las dependencias del sistema operativo. Puede consultar la Guía de instalación de PostgreSQL en RHEL8 para obtener la configuración detallada de la base de datos en general, en este artículo solo cubriremos los pasos necesarios para RedMine. Si la configuración de la base de datos es nueva, no olvide completar el initdb Paso en la guía mencionada o el inicio de la base de datos fallará.

  1. Crearemos un usuario que será el propietario de la aplicación y le daremos temporalmente sudo acceso. Podemos revocar este acceso una vez que se complete la instalación.
    # UserAdd Redmine

    Tenemos que establecer una contraseña para el nuevo usuario, que usaremos cuando usemos sudo:

    # passwd Redmine

    En las distribuciones basadas en Rhel, hay un rueda Grupo de usuarios, a quien se le permite usar sudo para ejecutar comandos privilegiados. Para verificar que este grupo esté configurado como sudoer, podemos grep el /etc/sudoers archivo:

    # grep " %wheel" /etc /sudoers %wheel all = (all) all # %wheel all = (all) nopasswd: todos

    Se comenta la segunda línea con la opción nopasswd, que se adapta a nuestras necesidades. Con la configuración anterior en su lugar, todo lo que necesitamos hacer es agregar el rojizo usuario al rueda grupo:

    # usermod -a -g Wheel Redmine
  2. Para instalar los paquetes que proporcionará el sistema operativo, utilizaremos DNF:
    # DNF Instalar Kernel-Devel Kernel-Headers GCC Postgresql-devel Ruby-devel Rubygems


  3. Para obtener la aplicación, visite el sitio de descarga oficial (que se ejecuta en Redmine). Desde aquí podemos descargar el comprimido tarball con wget al sistema objetivo:
    # wget https: // www.rojizo.org/liberaciones/Redmine-4.0.3.alquitrán.GZ -O /OPT /REDMINE -4.0.3.alquitrán.GZ

    Como sugiere el comando anterior, instalaremos la aplicación en el /optar directorio. Cambiaremos a este directorio y extraemos el archivo:

    # CD /OPT # TAR -XZF REDMINE -4.0.3.alquitrán.GZ

    Opcionalmente también podemos crear un enlace simbólico Para un acceso más fácil: de esta manera no necesitamos recordar la versión exacta:

    # ln -s /opt /redmine -4.0.3 /opt /Redmine

    Ahora podemos configurar el rojizo Usuario como propietario de la jerarquía de directorio extraída, recursivamente:

    # Chown -R Redmine: Redmine /Opt /Redmine*
  4. Para configurar la base de datos para la conexión de la aplicación, tenemos que iniciarla si aún no se está ejecutando:
    # SystemCTL Inicio PostgreSQL
  5. Tendremos que crear una base de datos vacía donde la aplicación almacenará sus datos. Para hacerlo, cambiaremos a la post -put Sistema operativo usuario creado de forma predeterminada en la instalación de la base de datos:
    # SU - Postgres

    Iniciaremos sesión en PSQL Como el superusador de la base de datos:

    $ PSQL PSQL (10.5) Escriba "ayuda" para obtener ayuda. Postgres =#

    Crearemos un rol que será utilizado por la aplicación (tenga en cuenta el nombre de usuario y la contraseña):

    Postgres =# Crear rol RedMine Iniciar contraseña encriptada 'R3DM1N3' Noinherit válido hasta 'Infinity';

    También creamos una nueva base de datos con el propietario creado anteriormente:

    Postgres =# Crear base de datos RMDB con encoding = "utf8" propietario = redmine;

    Necesitaremos el nombre de usuario, la contraseña, la codificación y el nombre de la base de datos en un paso posterior.

  6. Ahora que el usuario está configurado, debemos permitir el inicio de sesión en el servidor de la base de datos. El usuario de RedMine se conectará localmente, por lo que agregamos la siguiente línea al PG_HBA.confusión archivo, ubicado de forma predeterminada en /var/lib/pgsql/data Por defecto en las distribuciones basadas en RHEL:
    Anfitrión RMDB Redmine 127.0.0.1/32 MD5

    Consulte su archivo de configuración para ver lo siguiente:

    # Conexiones locales IPv4: Host todas las 127.0.0.1/32 Ident

    Si tiene esa línea, comentela, entrará en conflicto con el inicio de sesión que planeamos configurar.

  7. Con eso en su lugar, necesitamos reiniciar la base de datos para la configuración para entrar en vigencia:
    # SystemCTL reiniciar PostgreSQL
  8. Ahora tenemos toda la información necesaria para decirle a la aplicación dónde y cómo encontrará la base de datos. Hay un ejemplo del archivo de configuración de conexión de la base de datos con todas las bases de datos compatibles en la configuración subdirectorio del archivo extraído. Podemos hacer una copia de este archivo (usando el rojizo usuario):
    $ CP config/base de datos.YML.Ejemplo de configuración/base de datos.YML

    Podemos eliminar o comentar todas las configuraciones de ejemplo además de las relacionadas con PostgreSQL, o simplemente crear un archivo vacío con la configuración necesaria (menos basura permanecerá en el archivo de esa manera). Al final, el /opt/redmine/config/database.YML debe contener lo siguiente:

    # PostgreSQL Configuración Producción: Adaptador: PostgreSQL Base de datos: RMDB Host: 127.0.0.1 Nombre de usuario: RedMine Contraseña: "R3DM1N3"
    Copiar

    Tenga en cuenta que utilizamos la información de conexión de la base de datos que configuramos en los últimos dos pasos.



  9. Para reducir la cantidad de problemas posibles, probemos que podamos iniciar sesión en el RMDB base de datos con las credenciales proporcionadas en el archivo de configuración. Es más fácil depurar problemas de conexión con el conjunto de herramientas PostgreSQL que cualquier otro:
    $ PSQL -D RMDB -U REDMINE -W CONTRASEÑA PARA USUARIO REDMINE: PSQL (10.5) Escriba "ayuda" para obtener ayuda. rmdb =>
  10. Aquí es donde termina la parte fácil. Ahora instalaremos varios paquetes de ruby ​​RedMine depende. Algunos de ellos necesitan raíz acceso, algunos se instalarán en nombre del rojizo usuario, y luego algunos probablemente necesitarán una reparación. En serio. En primer lugar, necesitaremos aglutinante:
    # GEM Instalar Bundler Obtención: Bundler-2.0.1.GEM (100%) instaló con éxito Bundler-2.0.1 1 gema instalada

    Usaremos aglutinante con el rojizo usuario, pero también necesitaremos raíz para instalar o reparar Gemas de rubí, Entonces sugiero abrir otro terminal, cambiar a rojizo usuario, y navegar al /OPT/REDMINE directorio, al tiempo que mantiene abierta la consola raíz.

  11. Como rojizo Usuario, iniciamos la instalación en el /OPT/REDMINE directorio:
    $ BUNDLE INSTALACIÓN -Sin prueba de desarrollo RMAGICK

    Se instalarán muchas dependencias, y para algunos el instalador solicita el sudo contraseña: que es la contraseña del rojizo usuario. Parece que esta funcionalidad de sudo de alguna manera está rota un poco y puede manejar algunas de las instalaciones de paquetes privilegiados de raíz, y no puede seguir adelante con otros. Los que fallan se pueden instalar en la consola raíz y lo anterior manojo El comando se puede ejecutar nuevamente en la consola del usuario de Redmine. Lo que se necesitaba instalarse en mi caso con raíz son los siguientes:

    # install gem nokogiri -v '1.10.2 '--source' https: // rubygems.org/' # gem install pg -v' 1.1.4 ' - -Source' https: // rubygems.org/'

    También hay algunos paquetes que pueden romperse durante la instalación. Estos se pueden reparar en la consola raíz también. Al igual que con los pasos de instalación del paquete fallidos anteriores, la salida del aglutinante El comando dirá qué paquete tiene problemas y cómo resolverlo. En mi caso, los siguientes paquetes necesitaban reparación:

    # gem prístino nio4r --versión 2.3.1 # gem prístino rojo rojo --versión 3.4.0 # gem prístino websocket-conductor-Versión 0.7.0

    Tenga en cuenta que si está instalando otra versión de RedMine, los números de versión de los paquetes probablemente diferirán. Después de arreglar todos los paquetes rotos y faltantes, el manojo El comando debe completarse sin errores, con el siguiente extremo de la salida:

    […] Instalación de frascos roadie 1.3.0 Reting Rouge 3.3.0 Instalación de Rouge 3.3.0 paquete completo! 26 Dependencias de Gemfile, 57 gemas ahora instaladas. No se instalaron gemas en el desarrollo de grupos, la prueba y la rmagick. Use 'Información del paquete [Gemname]' para ver dónde está instalada una gema agrupada.
  12. Con la parte difícil hecha, necesitamos generar un token que se usará para codificar cookies de sesión:
    $ Bundle Exec Rake Generate_Secret_Token
  13. A continuación, generamos los objetos de la base de datos que necesitan la aplicación:
    $ Rails_env = Productle Bundle Exec Rake DB: migrar

    Además de crear los objetos de base de datos necesarios, este paso generará una gran cantidad de salida registrando todos los pasos a la consola. Veremos que muchas entradas parecen similares a las siguientes:

    ).0082S == 20180913072918 AddverifypeRtoauthSouthSouts: migrado (0.0083S) =============== == 20180923082945 CAMPOSQLITEBOOLEANSTO0And1: Migrating ======================== == 20180923082945 CAMPOS QUIPSQLITEBOOLEANSSTO0AND1: Migrated (0.0000s) =============

    Este proceso debería completarse en unos segundos.

  14. Podemos verificar la base de datos poblada con PSQL:
    rmdb => \ dt Lista de esquema de relaciones | Nombre | Tipo | Propietario --------+-------------------------------------+- -----+--------- público | ar_internal_metadata | mesa | Redmine Public | Adjuntos | mesa | Redmine Public | Auth_sources | mesa | Redmine Public | tableros | mesa | Redmine Public | cambios | mesa | Redmine […]


  15. El último paso de la instalación es cargar los datos predeterminados en la base de datos. Proporcionando el Redmine_lang Parámetro podemos guardarnos de cualquier pregunta durante la carga inicial.
    $ Rails_env = Production RedMine_Lang = en Bundle Exec RAKE REDMINE: load_default_data Datos de configuración predeterminados cargados.
  16. La instalación se ha completado. Podemos iniciar la aplicación:
    $ Bundle Exec Rails Server Webrick -e Production => Booting Webrick => Rails 5.2.2.1 aplicación que comienza en producción en http: // 0.0.0.0: 3000 => Ejecutar 'Rails Server -h' para más opciones de inicio [2019-04-14 18:39:12] Información Webrick 1.4.2 [2019-04-14 18:39:12] Información Ruby 2.5.1 (2018-03-29) [x86_64-linux] [2019-04-14 18:39:12] Información Webrick :: Httpserver#Start: PID = 30062 Port = 3000
  17. La aplicación ahora se está ejecutando y se puede acceder con un navegador. De la salida anterior podemos adivinar que está accesible en el puerto 3000, Entonces, si tenemos un firewall que se ejecuta en la máquina de destino, necesitamos abrir este puerto para acceder al servicio de forma remota:
    # firewall-cmd --zone = public --add-puerto = 3000/tcp --Permanent # firewall-cmd--Reload
  18. Al abrir un navegador y señalarlo a la dirección de la máquina y al puerto 3000 (http: // 192.168.1.14: 3000 en la siguiente captura de pantalla), podemos acceder a la interfaz basada en la web de nuestra nueva instalación de Redmine fresca. Página de inicio de sesión de Redmine.

    Las credenciales predeterminadas son administración para nombre de usuario, y también para contraseña. Al iniciar sesión primero, la aplicación de bienestar solicitará un cambio de contraseña para esta cuenta privilegiada. A partir de ahí, el servicio es nuestro para poblar, configurar y disfrutar.

  19. Con la instalación completa, podemos eliminar el rojizo usuario del rueda grupo, eliminando el orificio de seguridad necesario durante el proceso:
    # GPASSWD -D REDMINE REMOLACIÓN REDMINE DEL USUARIO DE LA RUEDA GROUP # ID REDMINE UID = 1008 (REDMINE) GID = 1008 (Redmine) Grupos = 1008 (RedMine)

Tutoriales de Linux relacionados:

  • Ubuntu 20.04 Instalación de PostgreSQL
  • Ubuntu 22.04 Instalación de PostgreSQL
  • Instale MySQL en Ubuntu 20.04 LTS Linux
  • Ubuntu 20.04 WordPress con instalación de Apache
  • Cómo instalar MySQL en Almalinux
  • Cómo configurar el servidor Linux Apache MySQL Python
  • Cosas para instalar en Ubuntu 20.04
  • Aplicaciones gráficas de interfaz de usuario (GUI) para administrar ..
  • Cómo persistir los datos a PostgreSQL en Java
  • Cosas para instalar en Ubuntu 22.04