Known problems:
This docker image does not work on Ubuntu 14.04 LTS, because Ubuntu 14.04 LTS has missing kernel compile option CONFIG_AUFS_XATTR=y, which is leading to setcap not working on docker’s aufs storage. Upstream bug: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1557776
So after messing around with AppArmor, SecComp and iptables for days, this hint also helped me with Ubuntu 16.04 Xenial, since Kernels before Ubuntu-4.4.0-22.38 on Xenial were also affected by the AUFS problem. I’m using Ksplice Uptrack to avoid reboots and was still running 4.4.0-21…
So for people running Xenial: make sure to have a current Kernel! Afterwards, I did not need to turn off AppArmor or do anything else besides what is described in the official guide.
Thanks for that tip @accolon. I was running Debian 8.5 and couldn’t get it to work. I then created a new VM running Ubuntu 16.04 Xenial (running kernel 4.4.0-31-generic). Done the same installation steps as I did before and now Collabora is working.
Guess sometimes you do have to get the correct OS to get something working.
There is one thing that isn’t working normally, the menu top left is not showing when clicking on ‘Office’, only when clicking on the logo it goes to the main page. I will open a new topic for it
I also had the issue about symlinking etc, i resolved it updating to kernel 4.6 (debian jessie).
Now I have an other problem:
kit-02288-04 00:46:00.612950 [ kit_queue_0011 ] Failed to load: file:///user/docs/2288/Nuovo%20foglio_elettronico.ods, error: loadComponentFromURL returned an empty reference
kit-02288-04 00:46:00.613279 [ kit_queue_0011 ] Failed to get LoKitDocument instance.
I found that libreoffice online asks wopi urls adding “?encoding=text” to the url.
This ofcourse invalidate the token (the original url is https://cloud…etc/etc/etc?access_token=), so I manually fixed richdocuments app code using a $token = str_replace("?encoding=text", “”, $token);… Now it works
Now I am unclear why this is happening, since I only changed the domains used in Apache (separate VM) towards NC and Collabora. And changed the details in NC config to reflect the main domain.
I’m running the docker image on ubuntu 16.04 with the latest kernel. I’m getting the same error and my logs shows the following before the connection is refused
wsd-00020-05 00:00:28.352565 [ client_ws_0002 ] WOPI host is not on the same host as the WOPI client: “52.205.196.197”. Connection is not allowed.
I have the same problem of a lot of people: when I open a document I have the message “We are sorry, this is an unexpected connection error. Please try again.”.
Here is my docker logs when the document is opened:
kit-00085-00 00:00:51.892720 [ loolkit ] Process started.
kit-00085-00 00:00:51.892951 [ loolkit ] Jail path: /opt/lool/child-roots/85/
kit-00085-00 00:00:51.893684 [ loolkit ] symlink(“…/lo”,“/opt/lool/child-roots/85/opt/collaboraoffice5.1”)
kit-00085-00 00:00:52.052085 [ loolkit ] link(“/opt/collaboraoffice5.1/LICENSE”,“/opt/lool/child-roots/85/lo/LICENSE”) failed. Exiting. (errno: Operation not permitted)
frk-00031-00 00:00:52.893093 [ loolforkit ] Child 85 has exited, removing its jail ‘/opt/lool/child-roots/85’
wsd-00022-10 00:00:55.833810 [ loolwsd ] Total memory used: 200752
wsd-00022-03 00:00:56.537906 [ client_ws_0001 ] getNewChild: No live child, forking more.
wsd-00022-03 00:00:56.538015 [ client_ws_0001 ] getNewChild: Timed out while waiting for new child.
wsd-00022-03 00:00:56.538063 [ client_ws_0001 ] Failed to get new child. Service Unavailable.
wsd-00022-03 00:00:56.538407 [ client_ws_0001 ] ClientRequestHandler::handleRequest: WebSocketErrorMessageException: Service is unavailable. Please try again later and report to your administrator if the issue persists.
wsd-00022-03 00:00:56.538929 [ client_ws_0001 ] Thread finished.
wsd-00022-00 00:00:56.679420 [ loolwsd ] MasterToForKit: spawn 1
wsd-00022-00 00:00:56.679516 [ loolwsd ] Writing to pipe. Data: [spawn 1].
frk-00031-00 00:00:56.026374 [ loolforkit ] readFIFO for pipe: wsd_pipe_rd returned: 8
frk-00031-00 00:00:56.026484 [ loolforkit ] Read line from pipe: wsd_pipe_rd, line: [spawn 1], data: .
frk-00031-00 00:00:56.026553 [ loolforkit ] ForKit command: [spawn 1].
frk-00031-00 00:00:56.026633 [ loolforkit ] Spawning 1 child per request.
frk-00031-00 00:00:56.026721 [ loolforkit ] Creating 1 new child.
frk-00031-00 00:00:56.026784 [ loolforkit ] Forking a loolkit process.
frk-00031-00 00:00:56.032659 [ loolforkit ] Forked kit [90].
kit-00090-00 00:00:56.033241 [ loolforkit ] Initializing kit
kit-00090-00 00:00:56.033428 [ loolforkit ] Log level is [8].
kit-00090-00 00:00:56.033581 [ loolkit ] Process started.
kit-00090-00 00:00:56.033891 [ loolkit ] Jail path: /opt/lool/child-roots/90/
kit-00090-00 00:00:56.034586 [ loolkit ] symlink(“…/lo”,“/opt/lool/child-roots/90/opt/collaboraoffice5.1”)
kit-00090-00 00:00:56.195244 [ loolkit ] link(“/opt/collaboraoffice5.1/LICENSE”,“/opt/lool/child-roots/90/lo/LICENSE”) failed. Exiting. (errno: Operation not permitted)
frk-00031-00 00:00:57.033940 [ loolforkit ] Child 90 has exited, removing its jail ‘/opt/lool/child-roots/90’
In the javascript console, I have also the error:
leaflet-src.js (ligne 2839, col. 1)TypeError: doclayer is undefined
After upgrading to kernel 4.6 i also changed the docker storage driver (from aufs to overlay).
And remember that if you change it you will lose al the images you have built.
Turns out that the browser wants to connect to localhost.
In other words: This might work in the case browser and docker container run on the same box.
What I did: started the container with docker run -t -d -p 127.0.0.1:9980:9980 -e "domain=cloud\.example\.com" --restart always --cap-add MKNOD collabora/code
In the Collabora configuration in Nextcloud, URL to Collabora Online server is https://cloud.example.com/ (thanks, @jurgenhaas!
I think that’s all.
No need for additional certificates, the installation guide is wrong here.
Of course, you need to replace cloud.example.com with the name of your own nextcloud server.
OS: OpenSUSE 13.2
About the save/apply button not working: disable the normal Documents app. The buttons clash (have the same id) so this has to be fixed in the code to work. @LukasReschke FYI I’ll create an issue.
wsd-BLA Poco::Net::DNS::resolveOne("cloud.josandcamila.com") failed: Host not found: cloud.josandcamila.com
wsd-BLA Poco::Net::IPAddress("cloud.josandcamila.com") failed: Invalid address: cloud.josandcamila.com
wsd-BLA WOPI host is not on the same host as the WOPI client: "". Connection is not allowed.
wsd-BLA No acceptable WOPI hosts found matching the target host [cloud.josandcamila.com] in config.
wsd-BLA ~DocumentBroker [https://cloud.josandcamila.com/apps/richdocuments/wopi/files/3610765?access_token=W7hLlzliRy7FYYY9BIqE3WTiBUoqgcMh] destroyed with 0 sessions left.
wsd-BLA ~ChildProcess dtor [34].
kit-00034-00 00:04:12.971798 [ loolkit ] Connection closed.
Earlier, I had this one:
wsd-BLA WOPI host is not on the same host as the WOPI client: "192.168.1.107". Connection is not allowed.
Indeed, 192.168.1.107 is my server’s address on the local network but that shouldn’t matter I suppose…