GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Restyaboard en CentOS 7

Restyaboard es una aplicación de tablero Kanban gratuita y de código abierto. Es la mejor alternativa autohospedada a Trello. Está escrito en PHP y utiliza PostgreSQL para almacenar su base de datos.

En este tutorial, instalaremos Restyaboard en el servidor CentOS 7.

Requisito previo

  • Servidor CentOS 7 mínimo
  • Privilegios de raíz

Paso 1:instalar Nginx

Antes de instalar cualquier paquete, se recomienda que actualice los paquetes y el repositorio con el siguiente comando.

yum -y update

Nginx no está disponible en el repositorio predeterminado de CentOS YUM, por lo tanto, también necesitaremos instalar el repositorio EPEL. Puede instalar EPEL escribiendo:

yum -y install epel-release

Ahora puede instalar nginx escribiendo:

yum -y install nginx

Una vez finalizada la instalación, puede ejecutar los siguientes comandos para iniciar nginx y permitir que se inicie automáticamente en el momento del arranque con los siguientes comandos.

systemctl start nginx systemctl enable nginx

Nginx debería estar ejecutándose en su servidor ahora.

Paso 2:instalar y configurar PHP-FPM con Mbstring

Restyaboard es compatible con PHP 7.0, por lo tanto, instalaremos PHP 7.0 para obtener la máxima seguridad y rendimiento. PHP 7.0 no está disponible en el repositorio YUM o EPEL, por lo tanto, necesitaremos instalar el repositorio Webtatic para el mismo. Ejecute el siguiente comando para instalar el repositorio de Webtatic.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Ahora instale PHP 7.0 con PHP-FPM junto con otros módulos requeridos.

yum -y install php70w php70w-fpm php70w-devel php70w-cli php70w-curl php70w-pgsql php70w-mbstring php70w-ldap php70w-pear php70w-imap php70w-xml php70w-pecl-imagick ImageMagick

Una vez finalizada la instalación, tendremos que configurar algunas cosas. De forma predeterminada, PHP-FPM está configurado para usarse con Apache, deberá cambiar los usuarios para que también pueda funcionar con nginx. Edite el archivo /etc/php-fpm.d/www.conf con su editor de texto favorito. En este tutorial, usaremos el editor nano. Si no tiene nano instalado, puede ejecutar yum -y install nano.

nano /etc/php-fpm.d/www.conf

Ahora busque las siguientes líneas y cambie apache a nginx.

; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

En lugar de usar un puerto de servidor, usaremos un archivo de socket para PHP-FPM. Busque la siguiente línea.

listen = 127.0.0.1:9000

y Cámbielo a la siguiente línea.

listen = /run/php-fpm/php7.0-fpm.sock

A continuación, busque las siguientes líneas.

;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660

Cambie los valores a lo siguiente:

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Además, deberá configurar la zona horaria en el archivo de configuración de PHP. Edite el archivo de configuración de PHP usando el comando:

nano /etc/php.ini

Busque la siguiente línea y elimine el comentario de la línea y configure la zona horaria de acuerdo con su región. Por ejemplo:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Kolkata

Descomente la línea cgi.fix_pathinfo y cambie el valor a 0.

cgi.fix_pathinfo=0

Además, también necesitará instalar GeoIP. Ejecute el siguiente comando para instalar GeoIP.

yum -y install GeoIP-devel

Ahora habilite la extensión GeoIP agregando la siguiente línea al final de /etc/php.ini

extension=geoip.so

Inicie PHP-FPM y permita que se inicie en el momento del arranque con los siguientes comandos.

systemctl start php-fpm systemctl enable php-fpm

Luego reinicie nginx usando el siguiente comando.

systemctl restart nginx

Paso 3:instalación y configuración de datos de PostgreSQL

PostgreSQL es un objeto de código abierto - sistema de gestión de bases de datos relacionales. Restyaboard usa PostgreSQL para almacenar su base de datos.

PostgreSQL no está disponible en el repositorio YUM o EPEL, deberá instalar el repositorio PostgreSQL.

rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Para instalar PostgreSQL ejecute el siguiente comando.

yum -y install postgresql96-server postgresql96-contrib

El comando anterior instalará PostgreSQL junto con todas las dependencias requeridas en su sistema, antes de usar el software, necesitaremos ejecutar el siguiente comando para inicializar la base de datos.

/usr/pgsql-9.6/bin/postgresql96-setup initdb

Una vez que PostgreSQL está instalado, es hora de configurarlo. Edite /var/lib/pgsql/9.6/data/pg_hba.conf para habilitar la autenticación basada en MD5.

nano /var/lib/pgsql/9.6/data/pg_hba.conf

Busque las siguientes líneas y cambie peer to trust e idnet to md5.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Una vez actualizada, la configuración debería verse como se muestra a continuación.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Ahora inicie el servidor PostgreSQL y habilítelo para que se inicie automáticamente en el momento del arranque con los siguientes comandos:

systemctl start postgresql-9.6 systemctl enable postgresql-9.6

Ahora cambie la contraseña del usuario predeterminado de PostgreSQL que se creó durante la instalación de PostgreSQL.

passwd postgres

Ahora inicie sesión con el usuario de PostgreSQL usando el siguiente comando.

su - postgres

El comando anterior iniciará sesión en el shell de postgres

Ahora cree un nuevo usuario escribiendo:

createuser rb_user

Ahora cambie al shell de PostgreSQL usando el siguiente comando.

psql

Verá que el aviso en el shell ha cambiado a postgres - #. Ahora ejecute la siguiente consulta para establecer una contraseña para el usuario recién creado para la base de datos de Restyaboard.

ALTER USER rb_user WITH ENCRYPTED password 'StrongPassword';

Asegúrese de usar un punto y coma al final de la consulta. La consulta anterior le pedirá la contraseña de rb_user dos veces. Ahora cree una nueva base de datos para la base de datos PostgreSQL usando la siguiente consulta.

CREATE DATABASE rb_data OWNER rb_user ENCODING 'UTF8' TEMPLATE template0;

La consulta anterior creará una base de datos denominada rb_data con codificación UTf8 utilizando template0 y la propiedad se proporcionará a rb_user.

Salga del shell psql al shell de usuario de shell normal del usuario de postgres usando el siguiente comando.

\q

y cambie al usuario raíz nuevamente usando el comando de salida.

Paso 4:descarga Restyaboard

Como ya tenemos todas las dependencias listas, ya podemos descargar Restyaboard. Ejecute el siguiente comando para descargar la versión desplegable lista.

cd /usr/share/nginx/html wget https://github.com/RestyaPlatform/board/releases/download/v0.4.2/board-v0.4.2.zip

Siempre puede encontrar el enlace a la última versión en la página de Restyaboard Github.

Ahora extraiga el archivo usando los siguientes comandos. Si no tiene instalado unzip, puede ejecutar yum -y install unzip.

unzip board-v0.4.2.zip -d board

Una vez que se extrae el archivo, importe el archivo SQL usando el siguiente comando.

psql -d rb_data -f "/usr/share/nginx/html/board/sql/restyaboard_with_empty_data.sql" -U rb_user

Ahora edite el archivo de configuración de Restyaboard para actualizar las credenciales de la base de datos.

nano /usr/share/nginx/html/board/server/php/config.inc.php

Encuentra las siguientes líneas.

define('R_DB_HOST', 'localhost');
define('R_DB_USER', 'restya');
define('R_DB_PASSWORD', 'hjVl2!rGd');
define('R_DB_NAME', 'restyaboard');
define('R_DB_PORT', 5432);

Cámbielo de acuerdo con el nombre de la base de datos, el nombre de usuario y la contraseña de la base de datos que hemos creado recientemente para almacenar los datos de Restyaboard. Una vez hecho esto, debería verse como se muestra a continuación.

define('R_DB_HOST', 'localhost');
define('R_DB_USER', 'rb_user');
define('R_DB_PASSWORD', 'StrongPassword');
define('R_DB_NAME', 'rb_data');
define('R_DB_PORT', 5432);

Paso 5:configurar el bloque del servidor Nginx

La configuración del bloque del servidor Restyboard nginx viene empaquetada con el archivo zip. Puede copiar el archivo de configuración a la ubicación del archivo de configuración nginx usando el siguiente comando.

cp /usr/share/nginx/html/board/restyaboard.conf /etc/nginx/conf.d

Ahora necesitará hacer algunos cambios en el archivo. Abra el archivo de configuración con su editor de texto favorito.

nano /etc/nginx/conf.d/restyaboard.conf

Al comienzo de la configuración, busque la siguiente línea.

server {
        listen 80 default_server;
        server_name _;

Elimine el texto default_server y proporcione su nombre de dominio después del nombre del servidor. Debería verse como se muestra a continuación.

server {
        listen 80;
        server_name board.yourdomain.com;

Busque también la siguiente línea:

 root /usr/share/nginx/html;

y

 location / {
                root /usr/share/nginx/html/client;
        }

y

root /usr/share/nginx/html/client;

Cambie la línea anterior según la carpeta de instalación de Restyaboard. Debería verse como se muestra a continuación.

root /usr/share/nginx/html/board;

y

 location / {
                root /usr/share/nginx/html/board/client;
        }

y

root /usr/share/nginx/html/board/client

También busque la línea:

fastcgi_pass    unix:/run/php/php7.0-fpm.sock;

Cámbialo por lo siguiente:

fastcgi_pass    unix:/run/php-fpm/php7.0-fpm.sock;

Puede cerrar el archivo ahora. Ahora proporcione la propiedad y el permiso apropiados usando los siguientes comandos.

chown -R nginx:nginx /usr/share/nginx/html/board/
chmod -R go+w "/usr/share/nginx/html/board/media"
chmod -R go+w "/usr/share/nginx/html/board/client/img"
chmod -R go+w "/usr/share/nginx/html/board/tmp/cache"
chmod -R 0755 /usr/share/nginx/html/board/server/php/shell/*.sh

Finalmente, agregue las entradas cron para permitir que las tareas programadas se ejecuten usando los siguientes comandos.

echo "*/5 * * * * /usr/share/nginx/html/board/server/php/shell/instant_email_notification.sh" >> /var/spool/cron/root
echo "0 * * * * /usr/share/nginx/html/board/server/php/shell/periodic_email_notification.sh" >> /var/spool/cron/root
echo "*/30 * * * * /usr/share/nginx/html/board/server/php/shell/imap.sh" >> /var/spool/cron/root
echo "*/5 * * * * /usr/share/nginx/html/board/server/php/shell/webhook.sh" >> /var/spool/cron/root
echo "*/5 * * * * /usr/share/nginx/html/board/server/php/shell/card_due_notification.sh" >> /var/spool/cron/root

Ahora deberá deshabilitar su SELinux porque la configuración de Proxy no funciona con las políticas de SELinux. Para deshabilitar temporalmente SELinux sin reiniciar el servidor, ejecute el siguiente comando.

setenforce 0

Para deshabilitar completamente SELinux, deberá editar el archivo /etc/selinux/config.

nano /etc/selinux/config

Busque la siguiente línea:

SELINUX=enforcing

Cámbialo por:

SELINUX=disabled

Luego reinicie Nginx usando el siguiente comando.

systemctl restart nginx

Ahora puede acceder al servidor yendo a la siguiente URL.

http://board.yourdomain.com

Verá la siguiente pantalla de inicio de sesión.

Ahora inicie sesión con el nombre de usuario admin y la contraseña restya. Una vez que haya iniciado sesión, verá la siguiente pantalla.

Para crear un nuevo tablero, haga clic en la flecha en la esquina izquierda de la página y haga clic en Agregar tablero u organización.

Proporcione un nombre y elija una plantilla para crear un nuevo tablero.

Una vez que haya creado el tablero, se verá como se muestra a continuación.

Para acceder al panel de administración, puede hacer clic en el botón Administrador en la esquina inferior derecha y luego hacer clic en Configuración en la barra superior.

Restyaboard ahora está instalado en su servidor, ahora puede usar el tablero kanban para mejorar el flujo de trabajo de su proyecto.


Cent OS
  1. Cómo instalar y configurar Nginx en CentOS 7

  2. Cómo instalar Nginx en CentOS 7

  3. Cómo instalar R en CentOS 7

  4. Cómo instalar phpMyAdmin con Nginx en CentOS 7

  5. Cómo instalar Linux Dash en CentOS 6

Cómo instalar Nginx con PHP-FastCGI en CentOS 6

Cómo instalar Magento con Nginx en CentOS 7

Cómo instalar Nginx en CentOS 6

Cómo instalar Nginx en CentOS 7

¿Cómo instalar Nginx en CentOS 7?

Cómo instalar Nginx en CentOS 8