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.