Cómo instalar GlassFish en CentOS 8 / CentOS Stream 8

En esta entrada veremos cómo instalar GlassFish en CentOS 8 / CentOS Stream 8 paso a paso, de tal forma que puedas desplegar aplicaciones de servidor realizadas en Java conforme al estándar Yakarta EE 9.1, sobre tu servidor o VPS CentOS.

Antes de instalar GlassFish en CentOS 8

Para seguir los pasos de esta guía de instalación de GlassFish en CentOS 8 / CentOS Stream 8 es necesario satisfacer los siguientes requisitos mínimos:

  • Una máquina CentOS 8 / CentOS Stream 8 actualizada.
  • Kit de desarrollo de Java (JDK) versión 11 ó superior.
  • Un usuario con permisos de sudo.
  • Acceso a Internet.

En caso de no disponer aún del entorno necesario, puede ser de utilidad consultar previamente nuestra guía de instalación de Java en CentOS 8.

Además, necesitaremos algunas herramientas de consola que obtendremos de los repositorios de CentOS 8, por lo que los actualizamos:

~$ sudo yum update

E instalamos los paquetes necesarios:

~$ sudo yum install -y unzip wget

Cómo descargar GlassFish para CentOS 8

Podemos descargar GlassFish para CentOS 8 directamente desde el sitio web del proyecto, donde encontraremos la última versión estable:

como descargar glassfish para centos 8 / centos stream 8

En el apartado «Assets» del anuncio del lanzamiento de la última versión encontraremos el paquete .zip que nos interesa. Podemos realizar la descarga directamente desde el navegador, pero si trabajamos remotamente desde consola usaremos alguna herramienta como wget para realizar la descarga:

~$ wget https://github.com/eclipse-ee4j/glassfish/releases/download/6.2.5/glassfish-6.2.5.zip

Cómo instalar GlassFish en CentOS 8

Para instalar GlassFish en CentOS 8 / CentOS Stream 8 descomprimiremos el paquete que acabamos de descargar en algún lugar adecuado del sistema de archivos, siendo el directorio /opt la ubicación recomendada:

~$ sudo unzip -q glassfish-6.2.5.zip -d /opt/glassfish

La plataforma está lista para funcionar como aplicación independiente en segundo plano, por lo que la podemos iniciar:

~$ sudo /opt/glassfish/glassfish6/bin/asadmin start-domain

GlassFish queda corriendo en segundo plano, dejando varios puertos a la escucha.

Configurar el firewall de CentOS 8 para GlassFish

Si vamos a acceder desde red a GlassFish será necesario añadir una serie de reglas a la configuración del firewall de CentOS 8.

Para acceder a las aplicaciones mediante conexiones estándar abriremos el puerto 8080:

~$ sudo firewall-cmd --permanent --add-port=8080/tcp

Para el acceso seguro, mediante conexiones SSL a través de protocolo HTTPS abriremos el puerto 8181:

~$ sudo firewall-cmd --permanent --add-port=8181/tcp

Y si deseamos acceder a la consola de administración de forma remota, abriremos el puerto 4848:

~$ sudo firewall-cmd --permanent --add-port=4848/tcp

Todos estos ajustes se aplican recargando la configuración del firewall:

~$ sudo firewall-cmd --reload

Cómo acceder a GlassFish en CentOS 8

Para acceder a GlassFish en CentOS 8 desde un navegador bastará con indicar la dirección (IP, nombre DNS, dominio, localhost si accedemos localmente, etc.) y el puerto al que queremos conectar.

Por ejemplo, la máquina CentOS 8 sobre la que hemos preparado este tutorial es accesible en el subdominio centos8s.local.lan, así que para acceder a la versión HTTP del servicio en el puerto 8080 usaremos http://centos8s.local.lan:8080 como URL.

como instalar glassfish en centos 8 / centos stream 8

Si queremos acceder a la versión segura del sitio, usaremos el protocolo HTTPS y el puerto 8181.

En nuestro ejemplo, ahora sería https://centos8s.local.lan:8181 la URL adecuada.

Como GlassFish por defecto usa certificados autofirmados para cifrar las conexiones HTTPS, el navegador seguramente mostrará algún aviso relativo a la imposibilidad de comprobar la autenticidad de dichos certificados:

Esto es normal, así que continuaremos con la conexión de la forma en que nos permita el navegador y se mostrará la versión segura del sitio:

instalar glassfish en centos 8 / centos stream 8

Si quieres acceder remotamente a la consola hay que hacer algún ajuste que veremos a continuación.

Cómo configurar GlassFish en CentOS 8

Para acceder a la consola de administración de GlassFish en CentOS 8 de forma remota hay que crear una contraseña para el usuario administrador, admin, tarea que haremos desde consola con el comando asadmin:

~$ sudo /opt/glassfish/glassfish6/bin/asadmin change-admin-password
Enter admin user name [default: admin]>
Enter the admin password>
Enter the new admin password>
Enter the new admin password again>
Command change-admin-password executed successfully.

Se nos pedirá el nombre del administrador (que dejamos en blanco para que use admin), la contraseña actual (que también dejamos en blanco) y la nueva contraseña y su confirmación.

Una vez que el usuario administrador dispone de contraseña, podemos activar el acceso remoto a la consola de administración, también con asadmin:

~$ sudo /opt/glassfish/glassfish6/bin/asadmin enable-secure-admin
Enter admin user name>  admin
Enter admin password for user "admin">
You must restart all running servers for the change in secure admin to take effect.
Command enable-secure-admin executed successfully.

Tendremos que identificarnos como usuario administrador para realizar esta operación, cuyos cambios no se aplicarán hasta que reiniciemos GlassFish:

~$ sudo /opt/glassfish/glassfish6/bin/asadmin restart-domain

El proceso de renicio tomará unos intantes.

Para acceder a la consola de administración usaremos el protocolo HTTPS y el puerto 4848.

En el ejemplo de este tutorial, https://centos8s.local.lan:4848 sería la URL para acceder a la consola:

como configurar glassfish en centos 8 / centos stream 8

Se mostrará una página de inicio de sesión donde usaremos las credenciales del usuario administrador.

Una vez autenticados, accedemos a la página principal de la consola de administración de GlassFish en CentOS 8:

glassfish en centos 8 / centos stream 8

Podemos cerrar la sesión en la consola desde el botón «Logout» y detener la plataforma con el comando asadmin:

~$ sudo /opt/glassfish/glassfish6/bin/asadmin stop-domain

Cómo configurar GlassFish como servicio de CentOS 8

Podemos configurar GlassFish como servicio de CentOS 8 de modo que no sea necesario estar iniciando y deteniendo la plataforma manualmente, tenerla disponible automáticamente con cada arranque del sistema, etc.

Para ello creamos un archivo de servicio de Systemd para GlassFish:

~$ sudo nano /etc/systemd/system/glassfish.service

Con un contenido similar al siguiente:

[Unit]
Description = GlassFish Server 6.2.5 para CentOS 8
After = syslog.target network.target

[Service]
ExecStart=/opt/glassfish/glassfish6/bin/asadmin start-domain
ExecReload=/opt/glassfish/glassfish6/bin/asadmin restart-domain
ExecStop=/opt/glassfish/glassfish6/bin/asadmin stop-domain
Type = forking

[Install]
WantedBy = multi-user.target

Guardamos el archivo e iniciamos el servicio por primera vez de forma manual:

~$ sudo systemctl start glassfish

Si queremos que GlassFish esté siempre disponible, podemos habilitarlo para que arranque automáticamente en cada inicio de CentOS 8:

~$ sudo systemctl enable glassfish

Es fácil comprobar el estado del servicio, también con systemctl:

~$ systemctl status glassfish

servicio glassfish en centos 8 / centos stream 8

Finalmente, puedes comprobar que el servicio funciona accediendo a GlassFish desde el navegador web.

Si has accedido a la consola de administración antes de lanzar GlassFish como servicio, borra los datos de navegación de tu navegador web antes de volver a acceder.

Cómo desplegar aplicaciones WAR sobre GlassFish en CentOS 8

Para desplegar una aplicación WAR sobre GlassFish en CentOS 8, teniendo el archivo .war disponible localmente, accederemos a la página «Deploy Applications or Modules» de la consola de administración.

como desplegar aplicaciones war sobre glassfish en centos 8 / centos stream 8

Podemos llegar aquí desde la página principal, denominada «Common Tasks«, siguiendo el enlace «Deploy an Application» de la sección «Deployment«.

También podemos llegar desde la entrada «Applications» del menú del panel lateral, usando a continuación el botón «Deploy«.

Con la opción «Packaged File to Be Uploaded to the Server» marcada, seleccionaremos el archivo .war a través del botón correspondiente.

desplegar aplicaciones war sobre glassfish en centos 8 / centos stream 8

Una vez seleccionado el archivo podremos configurar varios aspectos de la aplicación como el tipo, nombre, estado, etc. Hechos los ajustes (en caso de realizar alguno), desplegaremos la aplicación con el botón «OK«.

En unos instantes se mostrará la página de aplicaciones, donde la nueva aplicación figurará en la lista de aplicaciones desplegadas:

aplicaciones war sobre glassfish en centos 8 / centos stream 8

El enlace mostrado en la columna «Name» lleva a la página de ajustes de la aplicación, de modo que si lo que queremos es lanzar dicha aplicación seguiremos su enlace «Launch» en la columna «Action«.

Se abre una nueva página que muestra los enlaces directos a la aplicación, tanto en versión estándar HTTP como en versión segura HTTPS. Visitando cualquiera de estos enlaces por fin se mostrará la aplicación:

Conclusión

Ahora que sabes cómo instalar y configurar GlassFish en CentOS 8 / CentOS Stream 8 ya puedes desplegar aplicaciones Java de servidor, tanto en red local como desde Internet, ya sean tus propios desarrollos o aplicaciones de terceros.

¡Apoya comoinstalar.me!

¿Ya puedes desplegar aplicaciones sobre tu propia máquina gracias a nuestro pequeño tutorial? Si es así y quieres agradecérnoslo, cualquier pequeña contribución aporta mucho al mantenimiento de este sitio y la creación de más contenidos.

Puedes ayudarnos dejando una propina de tan sólo 1 $ desde PayPal:

O, si te sientes especialmente agradecido, puedes invitarnos a un café:

¡Gracias!

¿Dudas, preguntas, sugerencias?

Si te ha surgido cualquier duda o pregunta, tienes alguna sugerencia o corrección, etc. puedes dejar un comentario. Los comentarios están moderados para intentar luchar contra el SPAM, pero se revisan diariamente.

Valora esta entrada

5/5 - (2 votos)

Deja un comentario