Select Page

Nextcloud recomienda la solución de Office en-línea Collabora, que permie editar grupalmente archivos .odt, .calc
Collabora provee una imágen Docker para esto, por lo que parecía el candidato perfecto para ser el nuevo servicio de Numérica…
Sin embargo la integración fue bastante más ardua que los tres pasos con que lo venden.

El primer problema fue que hacerlo funcionar detrás del proxy.

Si bien ellos mismos enlazan a un blog con una configuración de proxy para Nginx, no funcionaba así sin más.
Un asunto es que en la documentación supone que uno trabaja en localhost, mientras que en compose los nombres de dominio coinciden con los nombres de servicios (por ej. numerica_office) pero ese no fue problema.

El real problema con el proxy fue que el container de Collabora escucha en el puerto 9980 por https, presentando un certificado de SSL auto-firmado.
Para que Nginx realmente pueda hacer el proxy hasta allí, tiene que habilitarse con la directiva
ssl_verify_client off;
la cual va a nivel del bloque server (no en el location de cada proxy).

Esto no es todo, porque aunque con eso el proxy funciona, y se puede entrar a https://office.numerica.cl, al momento de integrarlo en Nextcloud si bien Collabora carga su interfaz, los archivos no cargan, sino que presentan el mensaje “Asegúrese que el archivo no está corrupto – qué sé yo”.

En la página de Nextcloud, al mostrarte como se inicia el container, a docker run le pasan la opción –cap_add MKNOD docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=cloud\\.nextcloud\\.com' --restart always --cap-add MKNOD collabora/code

Se trata de una capacidad de Linux, que por el error que daba al no tenerla, debe tratarse de la capacidad para abrir forks o subprocesos, lo cual parece fundamental para que esta imágen funcione

Para más remate, en la documentación de Docker especifican que al levantar stacks (docker-compose.yml) en modo swarm, esta opción no está soportada. Así es que me vi obligado a retrotraerme a usar docker-compose up -d y renunciar al modo swarm

La verdad es que no lo estaba usando, pero se supone que Docker de ahora en adelante usa el modo swarm por defecto, y no deja de ser interesante la posibilidad de escalar servicios en clusters fácilmente

Además se me chingó el pad!

Finalmente, y preocupándome también de escapar los puntos del nombre de dominio con backlashs dobles, o sea siguiendo las instrucciones al pie de la letra, seguía en las mismas, hasta que me decidí a probar un conjuro vudú que hallé en el foro de Nextcloud, según el cual reiniciando docker (sí Docker entero, no el container) finalmente funcionaba…

Esta no es una solución, sino algo que debiera reportarse e investigar por parte de Collabora, por lo cual el servicio queda andando… pero en calidad de experimental

Mientras escribo ésto ya tuve que reiniciar Docker otra vez…
El container en sí tampoco se puede reiniciar, porque algo se le rompe y vuelve a tener rollo con los forks…
¿Hay que reiniciar todo el servicio, y luego Docker?


Confirmadísimo, al cabo de varios días de testeo, por tercera o cuarta vez, el Libre Office On Line no dura un día arriba, es literalmente inestable.

El error preciso parece ser ForKit:3369 <— profundizar Por otro lado, la búsqueda de referencias apunta a una falla más grave, de intención. Así es, hay bastante literatura acerca de una limitación arbitraria a la cantidad de conexiones (diez documentos, veinte conexiones… ¿simultáneas, o en total?), por la cual lxs desarrolladores no quieren dar explicaciones, y que concentra la crítica de la comunidad: esta compilación ¿es entonces una ‘muestra gratis’, un señuelo para que termines contratando la versión paga de Collabora? Busco el enlace de anoche que decía que la imágen Docker (que promueve Nextcloud) es una compilación cuya fuente no está disponible, y que allí se encontraría esta limitación obfuscada. En ese caso se confirmarían las sospechas acerca de las reales intenciones de Collabora. Como comenta alguien en el foro, actualmente existen sólo dos soluciones para herramientas de oficina en línea: Google Drive/Docs) y Microsoft Office 360. Collabora entra entonces al juego en una tercera posición que puede ser muy ventajosa, pues han indentificado que efectivamente la posibilidad de editar documentos a varias manos no tiene que ser a expensas de la privacidad de la información que contengan. Con su código, que es en el fondo Libre Office On Line, o sea un Libre Office como servidor, capaz de entregar una experiencia idéntica a esta conocida suite de escritorio, pero en el navegador del usuario, y encima colaborativamente, realmente abren ese nicho. ¿Será que simplemente no te lo entregan con cinta de regalo, sino que si tomas su código y le atas los últimos cabos, entonces te mereces hacerles la competencia, o algo así? Como éste contribuidor en GitHub que publicó un script de instalación (>> enlace requerido), y además de felicitaciones consiguió una oferta de empleo. Dan ganas de probar ese script en un Docker y tal vez así…

Pero por mientras lamentablemente debo decir que este desarrollo, si bien ciertamente abre líneas interesantes y posibilidades en el mediano plazo, actualmente no se encuentra en un estado de madurez como para proponerlo como alternativa.