Euro-Office DocumentServer: Suite ofimática soberana autohospedada

Publicado por


Open Source

Euro-Office DocumentServer: Suite ofimática soberana autohospedada

Servidor de documentos de código abierto bajo licencia AGPL-3.0 para edición colaborativa y gestión de formatos ofimáticos

Vídeo tutorial en YouTube

Mira el vídeo completo sobre cómo instalar y usar Euro-Office DocumentServer: Suite ofimática soberana autohospedada en el canal GENBYTE:

¿Qué es Euro-Office DocumentServer: Suite ofimática soberana autohospedada?

Euro-Office DocumentServer es una implementación de servidor de documentos diseñada para ofrecer una alternativa soberana y autohospedada a las suites ofimáticas en la nube. El proyecto, desarrollado por la organización Euro-Office, agrupa múltiples componentes modulares —núcleo de renderizado, fuentes, diccionarios, formatos de documento, integraciones, plantillas, SDK JavaScript y aplicaciones web— bajo una única arquitectura orientada a la edición colaborativa y la conversión de formatos. La distribución se realiza principalmente mediante imagen Docker publicada en GitHub Container Registry, lo que facilita su despliegue en entornos propios sin depender de servicios externos.

Despliegue inmediato con Docker y configuración mínima mediante variables de entorno.

Características principales

Arquitectura modular

El repositorio organiza el código en submódulos independientes: core, core-fonts, dictionaries, document-formats, document-server-integration, document-server-package, document-templates, sdkjs, sdkjs-forms, server y web-apps, lo que permite compilar y actualizar cada capa por separado.

Licencia AGPL-3.0

Código publicado bajo GNU Affero General Public License v3, garantizando que cualquier modificación ejecutada en red debe ofrecer su código fuente a los usuarios.

Imagen Docker oficial

Disponible en ghcr.io/euro-office/documentserver:latest para pruebas e integración, con soporte de variables de entorno para habilitar ejemplos y configurar JWT.

Soporte de formatos ofimáticos

Incluye módulos dedicados a formatos de documento (document-formats) y plantillas (document-templates) para compatibilidad con estándares abiertos.

Requisitos del sistema

  • Docker Engine instalado
  • Puerto 8080 disponible en el host (mapeado al puerto 80 del contenedor)
  • Variable de entorno JWT_SECRET con al menos 32 caracteres
  • Variable de entorno EXAMPLE_ENABLED=true para habilitar ejemplos (opcional)

Instalación con Docker Compose

Descargar la imagen

Obtener la imagen más reciente desde GitHub Container Registry.

docker pull ghcr.io/euro-office/documentserver:latest

Ejecutar el contenedor

Levantar la instancia mapeando el puerto 8080 del host al 80 del contenedor, con reinicio automático y variables de entorno requeridas.

docker run -i -t -d -p 8080:80 –restart=always -e EXAMPLE_ENABLED=true -e JWT_SECRET=my_long_jwt_secret_at_least_32_chars ghcr.io/euro-office/documentserver:latest

Acceder al proyecto

Interfaz web

Acceder a la interfaz del servidor de documentos mediante navegador en http://localhost:8080 (o la IP del host en el puerto 8080).

API y ejemplos

Cuando EXAMPLE_ENABLED=true, la imagen expone endpoints de ejemplo para probar la integración y la API REST del servidor.

Casos de uso

  • Edición colaborativa de documentos, hojas de cálculo y presentaciones en infraestructura propia
  • Conversión y renderizado de formatos ofimáticos abiertos (ODF, OOXML) en backend
  • Integración en plataformas de gestión documental o entornos de trabajo soberanos
  • Desarrollo y pruebas de aplicaciones que requieren motor de documentos compatible con ONLYOFFICE / Euro-Office

Configuración avanzada

Compilación desde código fuente

El proyecto documenta los pasos de compilación en el directorio build/ y procedimientos de desarrollo en develop/. Permite construir componentes individuales (core, sdkjs, web-apps, etc.) y generar paquetes deb/rpm.

# Consultar documentación en
# https://github.com/Euro-Office/DocumentServer/tree/main/build
# y
# https://github.com/Euro-Office/DocumentServer/tree/main/develop

Configuración de JWT

La variable JWT_SECRET debe ser una cadena de al menos 32 caracteres para firmar y validar tokens JSON Web Token usados en la autenticación de la API.

-e JWT_SECRET=clave_secreta_muy_larga_y_aleatoria_de_32_chars_o_mas

Gestión y mantenimiento

Actualizar imagen

Descargar la etiqueta latest y recrear el contenedor para aplicar cambios.

docker pull ghcr.io/euro-office/documentserver:latest
docker stop <container_id>
docker rm <container_id>
docker run -i -t -d -p 8080:80 –restart=always -e EXAMPLE_ENABLED=true -e JWT_SECRET=my_long_jwt_secret_at_least_32_chars ghcr.io/euro-office/documentserver:latest

Consultar logs

Revisar la salida estándar del contenedor para diagnosticar errores de arranque o ejecución.

docker logs -f <container_id>

Stack técnico

  • Shell (scripts de construcción y orquestación)
  • Docker (empaquetado y distribución)
  • JavaScript / TypeScript (SDK y aplicaciones web)
  • C++ / C (núcleo de renderizado y conversión)
  • Node.js (servidor y tooling)
  • Formatos abiertos: ODF, OOXML

Referencias oficiales

Apoya el canal GENBYTE

Sígueme en mis redes sociales

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *