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.
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.
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.
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.
# 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.
Gestión y mantenimiento
Actualizar imagen
Descargar la etiqueta latest y recrear el contenedor para aplicar cambios.
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.
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
- Repositorio oficial Euro-Office/DocumentServer: https://github.com/Euro-Office/DocumentServer
- Imagen Docker en GitHub Container Registry: https://ghcr.io/euro-office/documentserver
- Documentación de compilación (build): https://github.com/Euro-Office/DocumentServer/tree/main/build
- Guía de desarrollo (develop): https://github.com/Euro-Office/DocumentServer/tree/main/develop
- Licencia AGPL-3.0: https://www.gnu.org/licenses/agpl-3.0.en.html
Apoya el canal GENBYTE
¿Te ha sido útil este contenido?
Suscríbete a YouTube
Newsletter GENBYTE
Ko-fi
Contacto: [email protected]
