Cómo instalar Liferay Portal Portal CE 7.2 en Centos 8

Los Portales de Información Empresarial o (EIP) han pasado progresivamente de ser tendencia a herramientas empresariales esenciales. Liferay es una de esas herramientas basada en la web y codificada con Java. Liferay Portal Community Edition se basa en Digital Experience Plateforme DXP. En este tutorial, instalaremos Liferay Portal 7.2 en Centos 8 con MariaDB, Tomcat y Elasticsearch.

Requisitos:

  • Liferay Portal CE 7.2.0 GA1
  • MariaDB 10.3
  • Tomcat 9.0 incluido
  • Elasticsearch 6.8.4
  • OpenJDK 8
  • Centos 8

Hardware: Arquitectura de referencia y requisitos de hardware de Liferay Portal EE

Servidor de aplicaciones:

  • Nombre de host: APPSRV
  • Contenido: Liferay Portal 7.2 + MariaDB

Preparando algunas cosas para APPSRV:

desactivar SELinux:

sudo vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of these three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted

En la opción SELINUX Cambia «enforcing» por «disabled», tiene efecto tras reiniciar la máquina.

Comprobando la opción SELINUX:

getenforcing

2 Cambia el nombre del servidor:

sudo hostnamectl set-hostname APPSRV

Comprobando:

hostnamectl

Reiniciando …

3 Añadir una excepción en el cortafuegos para el puerto 8080:

Comprobando estado:

sudo firewall-cmd --state

Salida:

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

Comprobando el resultado:

sudo firewall-cmd --list-all

Salida:

2- Instalación de Liferay Portal y MariaDB en APPSRV:

2-1 Base de datos MariaDB:

Liferay Portal 7.2 soporta múltiples bases de datos utilizaremos MariaDB 10.3

sudo yum install mariadb mariadb-server

Ahora debemos configurar nuestro servidor de base de datos:

a. Iniciando el servicio:

sudo systemctl start mariadb

b. Habilitando el servicio para que se inicie cada vez que arranque el servidor

sudo systemctl enable mariadb

c. Terminando con establecer la contraseña y configurar algunas características:

sudo mysql_secure_installation

Ahora terminamos de configurar nuestro servidor de base de datos tenemos que crear una base de datos llamada«lportal» y el usuario con acceso completo:

mysql -u root -p

Introduce la contraseña que se introdujo en el paso «c «.

MariaBD [(none)]> create database lportal character set utf8mb4 collate utf8mb4_unicode_ci;
MariaBD [(none)]> create user 'lportalusr'@'localhost' identified by 'lportalpsw';
MariaBD [(none)]> grant all privileges on lportal.* to 'lportalusr'@'localhost' with grant option;

Comprobación de la base de datos:

MariaBD [(none)]> show databases;

Salida:

2-2 OpenJDK

Liferay es compatible Java 8 o Java 11en este tutorial utilizaremos OpenJDK 8.

sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel

Comprobación de la variable java: $JAVA_HOME

echo $JAVA_HOME

Salida:

La variable está vacía, vamos a exportarla:

export JAVA_HOME=/usr/lib/jvm/java
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

Comprobando:

echo $JAVA_HOME

Salida:

2.3 Portal Liferay

Con MariaDB y Java instalados y configurados, podemos instalar Liferay Portal.

Acostumbro a usar Wget para descargar archivos, así que debes instalarlo si quieres usarlo:

sudo yum -y install wget

Descarga Liferay Portal 7.2 CE:

wget https://github.com/liferay/liferay-portal/releases/download/7.2.0-ga1/liferay-ce-portal-tomcat-7.2.0-ga1-20190531153709761.tar.gz
ls

Copia el archivo a la carpeta /opt/:

sudo cp liferay-ce-portal-tomcat-7.2.0-ga1-20190531153709761.tar.gz /opt/

Extrae el archivo:

sudo tar xvf liferay-ce-portal-tomcat-7.2.0-ga1-20190531153709761.tar.gz
ls

Cambia el nombre de la carpeta Liferay a «liferay» (distingue mayúsculas de minúsculas) y borra el archivo comprimido, ya no lo necesitamos:

sudo mv liferay-portal-7.2.0-ga1 liferay
sudo rm -f liferay-ce-portal-tomcat-7.2.0-ga1-20190531153709761.tar.gz

Crear el archivo de configuración llamado «portal-ext.properties» para la base de datos liferay en /opt/liferay/tomcat-9.0.17/webapps/ROOT/WEB-INF/classes/

sudo vi /opt/liferay/tomcat-9.0.17/webapps/ROOT/WEB-INF/classes/portal-ext.properties
jdbc.default.driverClassName=org.mariadb.jdbc.Driver
jdbc.default.url=jdbc:mariadb://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=lportalusr
jdbc.default.password=lportalpsw
schema.run.enabled=true
schema.run.minimal=true

Tienes que hacer coincidir en esas dos líneas el nombre de usuario y la contraseña creados en el paso de instalación de MariaDB, para evitar por motivos de seguridad el uso de la cuenta root:

jdbc.default.username=lportalusr
jdbc.default.password=lportalpsw

En nuestro caso, el servidor de base de datos está instalado en el mismo servidor que Liferay Portal si quieres separarlos (lo que es recomendable para un mejor rendimiento) tienes que cambiar jdbc.default.url: sustituye «localhost» por la dirección IP del servidor de base de datos remoto.

jdbc.default.url=jdbc:mariadb://192.168.1.1/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false

Ejecutar la comprobación de la configuración /opt/liferay/tomcat-9.0.17/bin/configtest.sh

cd /opt/liferay/tomcat-9.0.17/bin/
sudo chmomd +x *.sh
sudo ./configtest.sh

Salida:

Sin errores.

Ahora el primer arranque, en /opt/liferay/tomcat-9.0.17/bin/

hazlos ejecutables:

sudo chmod +x *.sh

ejecuta el archivo ./startup.sh

sudo ./startup.sh

Para controlar el arranque del servidor y casi todos los mensajes de tu servidor liferay:

sudo tail -f /opt/liferay/tomcat-9.0.17/log/catalina.out

Este archivo se genera una vez que iniciamos el servicio

Esto es parte del archivo catalina.out, es demasiado largo la primera vez que se ejecuta y luego será bastante corto en el siguiente reinicio.

El servidor está funcionando

esta es la primera vez que se ejecuta Liferay en http://IPSERVER:8080.

Observa que la configuración BASE DE DATOS es la misma en el archivo portal-ext.properties.

Elige tu Nombre del Portal, Nombre y Apellidos, el email es tu login así que ten cuidado con lo que escribes no importa si existe o no.

Después de rellenar los campos solicitados pulsa en Finalizar Configuración y Reinicia tu servidor Liferay.

cd /opt/liferay/tomcat-9.0.17/bin/
sudo ./shutdown.sh

Mientras el servicio liferay está parado vamos a configurar el servicio Systemd.

Systemd

Configuración del servicio Systemd, creando un archivo llamado «liferay.service» en /etc/systemd/system/

Necesitamos un usuario para el servicio, así que vamos a llamarlo liferay, ten en cuenta el -m y -d para el directorio home.

sudo useradd -m -d /home/liferay -c 'Service Account for Liferay Portal' liferay
sudo vi /etc/systemd/system/liferay.service

Contenido del archivo:

[Unit]
Description=Liferay Portal CE
After=network.target

[Service]
Type=forking
User=liferay
Group=liferay
ExecStart=/opt/liferay/tomcat-9.0.17/bin/startup.sh
ExecStop=/opt/liferay/tomcat-9.0.17/bin/shutdown.sh
TimeoutStartSec=600
TimeoutStopSec=200
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target

necesitamos cambiar algunos privilegios:

sudo chmod 664 /etc/systemd/system/liferay.service
sudo chown -R liferay:liferay /opt/liferay/
sudo systemctl enable liferay
sudo systemctl start liferay

comprobar el servicio:

sudo systemctl status liferay

salida:

Vamos a completar la última parte de la configuración:

Después de aceptar el acuerdo tienes que establecer una contraseña con una pregunta recordatorio.

y esta es la página de inicio de Liferay Portal

Conclusión: Nuestro Portal Liferay es totalmente funcional, consulta el sitio web oficial para personalizarlo.

También te podría gustar...