MuyLinux MuyLinux  

ONLYOFFICE Docs en tu propio servidor: instalación con Docker paso a paso

ONLYOFFICE Docs es la pieza que permite llevar los editores en línea de ONLYOFFICE a un servidor propio e integrarlos con plataformas como Nextcloud, ownCloud, Moodle, Odoo, Seafile y otros servicios de almacenamiento o colaboración. En otras palabras, no hablamos de la suite ofimática en la nube, sino de desplegar el servidor de documentos con el que editar textos, hojas de cálculo, presentaciones, PDF y formularios PDF desde el navegador, a través de uno de estos medios.

En este tutorial vamos a instalar ONLYOFFICE Docs Community Edition mediante Docker, ya que es el método más práctico cuando se busca un despliegue reproducible, fácil de actualizar y válido para cualquier distribución Linux capaz de ejecutar Docker. El ejemplo concreto, no obstante, lo haremos sobre Ubuntu 26.04 LTS, de reciente lanzamiento y una base muy habitual en servidores, que además Docker contempla oficialmente entre las versiones soportadas.

Antes de seguir, un matiz importante: este tutorial cubre la instalación de ONLYOFFICE Docs como servicio independiente. La integración posterior con Nextcloud, ownCloud u otra plataforma dependerá del conector correspondiente, pero la base será siempre la misma: tener un servidor de ONLYOFFICE Docs accesible por HTTP o, mucho mejor, por HTTPS.

Dicho lo cual, ONLYOFFICE dispone también de una plataforma propia llamada ONLYOFFICE DocSpace, pensada para quienes buscan directamente una suite colaborativa online completa, con gestión de usuarios, salas, almacenamiento y los editores ya integrados, sin necesidad de recurrir a servicios externos. DocSpace se puede desplegar igualmente con Docker, pero requiere un enfoque diferente y merece su propio tutorial.

Requisitos previos

Aunque la documentación oficial de ONLYOFFICE está un poco desactualizada, fija unos requisitos razonables para la edición Docker que se mantienen: procesador de doble núcleo a 2 GHz o superior, 4 GB de RAM como mínimo, 40 GB de espacio libre, al menos 4 GB de swap y una distribución Linux amd64 con kernel 3.10 o superior. A eso hay que añadir una versión de Docker todavía soportada por el propio proyecto.

En la práctica, conviene preparar lo siguiente:

  • Un servidor Linux actualizado, físico, virtual o VPS.
  • Acceso con privilegios de administrador.
  • Un dominio o subdominio apuntando al servidor si se va a usar HTTPS con Let’s Encrypt.
  • Los puertos 80 y 443 libres, o bien un puerto alternativo si el servidor ya tiene un proxy inverso o una web en funcionamiento.
  • Una plataforma con la que integrar ONLYOFFICE Docs, salvo que solo se quiera dejar el servicio preparado.

El método es válido para cualquier distribución con Docker, pero la instalación de Docker cambia según el sistema. En Debian, Fedora, RHEL, openSUSE, Arch y compañía habrá que seguir las instrucciones oficiales correspondientes. Lo que cambia es esa parte; el contenedor de ONLYOFFICE Docs se ejecuta igual.

1. Actualizar Ubuntu 26.04 LTS

Comenzamos con lo básico. En Ubuntu 26.04 LTS, actualiza el sistema antes de instalar Docker:

sudo apt update
sudo apt upgrade

Si el sistema recibe una actualización de kernel, reinicia antes de continuar:

sudo reboot

2. Instalar Docker en Ubuntu 26.04 LTS

Docker recomienda instalar Docker Engine desde su repositorio oficial. Antes, elimina posibles paquetes conflictivos que pueda proporcionar la distribución:

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc | cut -f1)

No pasa nada si apt indica que no hay nada que eliminar. Después, añade la clave y el repositorio oficial de Docker:

sudo apt update
sudo apt install ca-certificates curl

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc

sudo chmod a+r /etc/apt/keyrings/docker.asc

sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

Instala ahora Docker Engine y sus componentes principales, incluyendo el plugin de Docker Compose:

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Comprueba que el servicio está activo:

sudo systemctl status docker --no-pager

Y verifica la instalación con la imagen de prueba:

sudo docker run hello-world

A partir de aquí usaremos sudo para ejecutar Docker, que es la opción más directa en un servidor. Se puede configurar Docker para ejecutarlo sin sudo, pero conviene recordar que el grupo docker concede privilegios equivalentes a root, así que no es una decisión menor.

3. Crear un secreto JWT

ONLYOFFICE Docs utiliza JWT para validar las solicitudes que recibe. Desde la versión 7.2, si no se define un secreto propio, este se regenera en cada reinicio de la máquina o del servidor físico, lo que puede romper integraciones. Por eso hay que fijarlo desde el primer momento.

Genera un secreto aleatorio y guárdalo en un archivo de entorno:

JWT_SECRET=$(cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)

sudo install -m 600 /dev/null /etc/onlyoffice-docs.env

echo "JWT_SECRET=${JWT_SECRET}" | sudo tee /etc/onlyoffice-docs.env > /dev/null

Guarda ese valor también en tu gestor de contraseñas o en la documentación privada del servidor. Lo necesitarás al conectar ONLYOFFICE Docs con la plataforma que vayas a usar.

4. Lanzar ONLYOFFICE Docs con Docker

La instalación básica se puede hacer con un solo comando, pero es recomendable montar los directorios persistentes en el servidor. Así se conservan datos, configuración, logs y base de datos interna cuando actualices el contenedor.

Ejecuta:

sudo docker run -i -t -d \
  --name onlyoffice-docs \
  --restart=always \
  --env-file /etc/onlyoffice-docs.env \
  -p 80:80 \
  -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
  -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
  -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
  -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql \
  onlyoffice/documentserver:latest

Con esto, Docker descargará la imagen onlyoffice/documentserver:latest y arrancará el servicio en el puerto 80 del servidor. La opción --restart=always hace que el contenedor vuelva a levantarse automáticamente tras un reinicio, mientras que --name onlyoffice-docs facilita su administración posterior.

Si el puerto 80 ya está ocupado, puedes publicar ONLYOFFICE Docs en otro puerto. Por ejemplo:

sudo docker run -i -t -d \
  --name onlyoffice-docs \
  --restart=always \
  --env-file /etc/onlyoffice-docs.env \
  -p 8080:80 \
  -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
  -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
  -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
  -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql \
  onlyoffice/documentserver:latest

En ese caso, el servicio quedará accesible mediante http://IP_DEL_SERVIDOR:8080 o a través del proxy inverso que configures delante.

5. Abrir los puertos necesarios

Si usas UFW en Ubuntu y quieres exponer el servicio directamente, abre HTTP:

sudo ufw allow 80/tcp

Si vas a activar HTTPS, abre también 443:

sudo ufw allow 443/tcp

Comprueba el estado del cortafuegos:

sudo ufw status

Este paso depende de la configuración de cada servidor. En un VPS, además del firewall local, puede haber reglas de red en el panel del proveedor.

6. Comprobar que ONLYOFFICE Docs funciona

Lista los contenedores activos:

sudo docker ps

Consulta los últimos mensajes del contenedor:

sudo docker logs --tail=50 onlyoffice-docs

Y prueba el acceso desde el propio servidor:

curl -I http://localhost

Después abre en el navegador la dirección del servidor. Si estás usando el puerto predeterminado:

http://IP_DEL_SERVIDOR

Si has usado un puerto alternativo:

http://IP_DEL_SERVIDOR:8080

La página inicial de ONLYOFFICE Docs no sustituye a una plataforma de almacenamiento o colaboración. Sirve para comprobar que el servicio responde. Para trabajar con documentos tendrás que conectarlo con Nextcloud, ownCloud, Moodle, Odoo, Seafile u otra solución compatible, indicando la URL del servidor de documentos y el secreto JWT que has creado.

7. Activar HTTPS con Let’s Encrypt

Para un despliegue real, HTTPS no es opcional. ONLYOFFICE Docs se puede ejecutar directamente en HTTPS y la documentación contempla el uso de Let’s Encrypt mediante variables de entorno.

Si ya has creado el contenedor anterior, deténlo y elimínalo antes de recrearlo con HTTPS. No perderás los datos si mantienes los mismos volúmenes:

sudo docker stop onlyoffice-docs
sudo docker rm onlyoffice-docs

Ahora lanza de nuevo el contenedor, sustituyendo docs.tudominio.com y admin@tudominio.com por tus datos reales:

sudo docker run -i -t -d \
  --name onlyoffice-docs \
  --restart=always \
  --env-file /etc/onlyoffice-docs.env \
  -p 80:80 \
  -p 443:443 \
  -e LETS_ENCRYPT_DOMAIN=docs.tudominio.com \
  -e LETS_ENCRYPT_MAIL=admin@tudominio.com \
  -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \
  -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \
  -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \
  -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql \
  onlyoffice/documentserver:latest

El dominio debe apuntar correctamente al servidor y los puertos 80 y 443 tienen que estar accesibles desde Internet. Si tienes un proxy inverso delante, lo más limpio suele ser terminar TLS en el proxy y publicar el contenedor en un puerto interno, pero esa configuración ya depende de Nginx, Apache, Traefik, Caddy o la solución que utilices.

ONLYOFFICE Docs en tu propio servidor Linux: instalación con Docker paso a paso

8. Conectar ONLYOFFICE Docs con tu plataforma

El último paso no se hace en Docker, sino en la aplicación con la que vayas a usar ONLYOFFICE Docs. Por ejemplo, en Nextcloud u ownCloud tendrás que instalar el conector correspondiente, indicar la dirección pública del servidor de documentos y añadir el secreto JWT.

La URL será algo como:

https://docs.tudominio.com

En el caso de ONLYOFFICE DocSpace, la integración con ONLYOFFICE Docs ya viene preparada de serie, por lo que no hace falta configurar conectores externos como sucede con Nextcloud u ownCloud. Aun así, el servidor de documentos sigue siendo la base tecnológica sobre la que se apoyan los editores online.

Si no has configurado HTTPS y estás haciendo solo una prueba local, podría ser:

http://IP_DEL_SERVIDOR

Pero para producción, insistimos: usa HTTPS, dominio propio y un secreto JWT fijo.

9. Actualizar ONLYOFFICE Docs

La ventaja de Docker es que actualizar resulta relativamente sencillo, pero no conviene hacerlo de cualquier manera. La documentación oficial recomienda crear una copia de seguridad de los volúmenes antes de actualizar y preparar el apagado del servicio para evitar pérdida de datos, ya que ONLYOFFICE Docs guarda los documentos cuando todos los usuarios que los estaban editando los han cerrado.

Crea una copia de seguridad:

sudo tar -czf onlyoffice-docs-backup-$(date +%Y%m%d).tar.gz \
  /app/onlyoffice/DocumentServer/data \
  /app/onlyoffice/DocumentServer/lib \
  /app/onlyoffice/DocumentServer/db

Prepara el apagado:

sudo docker exec onlyoffice-docs documentserver-prepare4shutdown.sh

Detén el contenedor y conserva el antiguo hasta comprobar que todo funciona:

sudo docker stop onlyoffice-docs
sudo docker rename onlyoffice-docs onlyoffice-docs-old-$(date +%Y%m%d)

Descarga la imagen nueva:

sudo docker pull onlyoffice/documentserver:latest

Y vuelve a lanzar el contenedor con los mismos volúmenes, puertos y secreto JWT. Cuando compruebes que todo funciona, podrás eliminar el contenedor antiguo.

10. Alternativa: Docker Compose

ONLYOFFICE mantiene también una vía de instalación con Docker Compose basada en el repositorio Docker-DocumentServer. Es útil si prefieres gestionar el despliegue con un archivo de composición en lugar de un comando largo.

En Ubuntu 26.04 LTS, si has seguido los pasos anteriores, ya tienes instalado el plugin moderno de Docker Compose. Clona el repositorio oficial:

git clone https://github.com/ONLYOFFICE/Docker-DocumentServer
cd Docker-DocumentServer

Arranca el servicio:

sudo docker compose up -d

Y para detenerlo:

sudo docker compose down

La documentación de ONLYOFFICE todavía muestra el comando clásico docker-compose. En instalaciones actuales de Docker, lo habitual es usar docker compose, sin guion, porque Compose se instala como plugin de Docker. Si tu distribución mantiene el binario antiguo, el comando heredado seguirá funcionando.

Conclusión

Instalar ONLYOFFICE Docs con Docker no tiene demasiado misterio, y esa es precisamente una de sus ventajas: una vez Docker está funcionando, el despliegue es prácticamente el mismo en cualquier distribución Linux. Ubuntu 26.04 LTS aporta aquí una base cómoda y oficialmente soportada por Docker, pero no es un requisito imprescindible.

Lo importante es cuidar tres puntos: usar una versión soportada de Docker, fijar desde el principio el secreto JWT y montar los volúmenes persistentes para poder actualizar sin sobresaltos. A partir de ahí, queda lo más interesante: integrar ONLYOFFICE Docs con la plataforma que ya uses y llevar la edición colaborativa de documentos a tu propio servidor.

La entrada ONLYOFFICE Docs en tu propio servidor: instalación con Docker paso a paso es original de MuyLinux

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.