En INFODI realizamos una instalación limpia de Dataverse 6.11, con el objetivo de validar su despliegue en una arquitectura moderna basada en Java 21, Payara 7, PostgreSQL, Apache Solr y Nginx.
Dataverse es una plataforma ampliamente utilizada para la gestión, publicación y preservación de datos de investigación. A diferencia de otros repositorios orientados principalmente a documentos o publicaciones académicas, Dataverse pone el foco en datasets, metadatos, versionamiento, citación y publicación de datos bajo principios FAIR.
Arquitectura utilizada
La instalación fue realizada sobre un servidor Ubuntu 22.04 LTS, utilizando la siguiente arquitectura base:
Internet
│
▼
Nginx
│
▼
Payara 7
│
▼
Dataverse 6.11
│
├── PostgreSQL
└── Apache Solr
Esta arquitectura permite mantener Payara detrás de Nginx, exponer únicamente los puertos web necesarios y preparar posteriormente la plataforma para HTTPS mediante certificados SSL de Let's Encrypt.
Componentes principales
- Ubuntu Server 22.04 LTS como sistema operativo base.
- Java 21, versión recomendada para Dataverse 6.11.
- Payara 7.2026.2 como servidor de aplicaciones Jakarta EE.
- PostgreSQL como motor de base de datos relacional.
- Apache Solr 9 como motor de indexación y búsqueda.
- Nginx como proxy reverso para publicación web.
Cambios relevantes respecto de instalaciones anteriores
Dataverse 6.11 incorpora cambios importantes en su stack tecnológico. En particular, el uso de Payara 7 y Java 21 obliga a revisar cuidadosamente las versiones utilizadas durante el despliegue. Uno de los puntos más importantes detectados durante la instalación fue que el instalador valida explícitamente la versión de Payara, rechazando versiones anteriores aunque pertenezcan a la misma rama 7.
En nuestro caso, una instalación inicial con una versión anterior de Payara 7 fue rechazada por el instalador, por lo que fue necesario ajustar el entorno a la versión recomendada: Payara 7.2026.2.
Instalación de PostgreSQL y configuración de acceso
Dataverse requiere una base de datos PostgreSQL y un usuario de aplicación con permisos suficientes para crear y administrar las tablas necesarias. Durante la instalación se verificó la conectividad tanto desde línea de comandos como desde Payara mediante el pool JDBC.
Un aspecto relevante fue la configuración de autenticación en PostgreSQL. En entornos Ubuntu, el acceso local puede estar configurado con métodos como peer, scram-sha-256 o md5, por lo que es importante validar que el instalador pueda conectarse correctamente al servidor de base de datos durante el proceso de inicialización.
Payara: despliegue, JVM y conflictos de procesos
Una parte crítica del proceso fue la configuración de Payara. El instalador de Dataverse crea múltiples opciones JVM, configura propiedades internas de la aplicación, define parámetros de memoria y prepara el dominio para ejecutar el WAR de Dataverse.
Durante las pruebas se detectó un error de arranque asociado a:
java.net.BindException: Address already in use
El origen no estaba en Dataverse, sino en la existencia de más de una instancia de Payara intentando utilizar simultáneamente los mismos puertos. Una vez detenidos los procesos Java residuales y dejando activo un único dominio Payara, el servidor inició correctamente.
Despliegue del WAR de Dataverse
Dataverse se distribuye como una aplicación Java empaquetada en formato WAR. A diferencia de plataformas con frontend desacoplado, como aquellas basadas en Angular o React, Dataverse utiliza una arquitectura Java tradicional con JSF/XHTML, recursos estáticos y despliegue sobre Payara.
El despliegue del WAR se realizó mediante asadmin, dejando la aplicación disponible en el contexto principal del servidor.
asadmin deploy --name dataverse --contextroot / dataverse.war
Inicialización de la aplicación
Un punto muy importante es que desplegar el WAR no basta para dejar la plataforma operativa. Después del despliegue, Dataverse requiere ejecutar scripts de postinstalación que crean la estructura inicial del sistema.
Estos scripts configuran:
- bloques de metadatos;
- roles internos;
- proveedores de autenticación;
- usuario administrador;
- Root Dataverse;
- facetas de búsqueda;
- licencias iniciales;
- configuraciones administrativas básicas.
Antes de ejecutar estos pasos, la API respondía correctamente, pero la interfaz web podía devolver errores debido a que aún no existía el Root Dataverse. Una vez completado el setup, la interfaz quedó disponible correctamente.
Configuración de Solr
Dataverse utiliza Solr para búsqueda, facetas e indexación de datasets. Durante la validación se comprobó que Solr puede estar correctamente iniciado, pero sin cores creados. Esto se detecta fácilmente consultando:
curl http://localhost:8983/solr/admin/cores?action=STATUS
Si la respuesta muestra un objeto status vacío, Solr está activo pero no tiene cores disponibles. En ese caso es necesario crear el core collection1 y copiar los archivos schema.xml y solrconfig.xml entregados por el instalador de Dataverse.
Nginx como proxy reverso
Una vez desplegada la aplicación, se configuró Nginx como proxy reverso hacia Payara. Esto permite acceder a la plataforma sin exponer directamente el puerto 8080 Con esta configuración, la plataforma queda publicada a través del dominio institucional, manteniendo Payara protegido detrás de Nginx.
Resultado final
Al finalizar el proceso, Dataverse quedó completamente operativo, con acceso administrativo, Root Dataverse creado, búsqueda funcional y una colección de demostración con datasets de prueba.
La interfaz permite visualizar datasets, filtrar por facetas, administrar colecciones, publicar contenidos y gestionar usuarios desde el panel administrativo.
Principales aprendizajes técnicos
- Dataverse 6.11 requiere especial atención a la versión exacta de Payara.
- El despliegue del WAR no reemplaza los scripts de inicialización.
- Solr puede estar activo sin tener el core requerido por Dataverse.
- Los errores HTTP 500 iniciales suelen estar asociados a configuración incompleta.
- Payara debe ejecutarse como una única instancia para evitar conflictos de puertos.
- Nginx permite publicar la plataforma de forma limpia y segura.
Conclusión
La instalación de Dataverse 6.11 sobre Ubuntu 22.04 permitió validar una arquitectura moderna basada en Java 21, Payara 7, PostgreSQL, Solr y Nginx. Aunque el procedimiento requiere revisar cuidadosamente versiones, permisos, parámetros JVM y configuración de servicios, el resultado final es una plataforma robusta para la gestión y publicación de datos de investigación.
Este proceso permitió además documentar puntos críticos que no siempre son evidentes en una instalación limpia, especialmente en lo relativo a Payara, Solr y la inicialización del Root Dataverse. Contar con este tipo de validaciones facilita futuras implementaciones, reduce tiempos de diagnóstico y permite ofrecer entornos Dataverse más estables y mejor preparados para instituciones que trabajan con datos de investigación.