Collabora always loading in Nextcloud 23 on Raspberry Pi 4 (neither build-in/nor self deployed using Docker)

Hello,

I’ve installed the latest Nextcloud 23 ( [Nextcloud Hub II 23.0.0) on a Raspberry Pi 4 with 4 GB of memory (DietPi ARM v8 = 64 Bit) to try out the new Collabora integration. I installed the Collabora Online - Built-in CODE Server (ARM64) and the main Collabora App. It seems that the build-in app just starts the AppImage located in /var/www/nextcloud/apps/richdocumentscode_arm64/collabora. This process is running, at least until the server got restarted.

When I try to open a table or text document, It just spins forever

grafik

Fontconfig and glibc as documented here are installed, glibc was already pre-installed and I installed fontconfig using apt: apt install fontconfig. I cannot find anything usefull in the logs. Only one request to http://dietpi/nextcloud/remote.php/dav/files/admin/tableabc.ods where tableabc.ods is the name of my test file. It gets a 404 response:

<?xml version="1.0"?>
<d:multistatus
  xmlns:d="DAV:"
  xmlns:s="http://sabredav.org/ns"
  xmlns:oc="http://owncloud.org/ns"
  xmlns:nc="http://nextcloud.org/ns">
  <d:response>
    <d:href>/nextcloud/remote.php/dav/files/admin/tableabc.ods</d:href>
    <d:propstat>
      <d:prop>
        <d:getlastmodified>Mon, 06 Dec 2021 16:52:54 GMT</d:getlastmodified>
        <d:getetag>&quot;cb8209acb103edb0acbd8f69d15ca258&quot;</d:getetag>
        <d:getcontenttype>application/vnd.oasis.opendocument.spreadsheet</d:getcontenttype>
        <d:resourcetype/>
        <oc:fileid>353</oc:fileid>
        <oc:permissions>RGDNVW</oc:permissions>
        <oc:size>0</oc:size>
        <d:getcontentlength>0</d:getcontentlength>
        <nc:has-preview>true</nc:has-preview>
        <nc:mount-type></nc:mount-type>
        <x1:share-permissions
          xmlns:x1="http://open-collaboration-services.org/ns">19
        </x1:share-permissions>
        <oc:tags/>
        <oc:favorite>0</oc:favorite>
        <oc:comments-unread>0</oc:comments-unread>
        <oc:owner-id>admin</oc:owner-id>
        <oc:owner-display-name>admin</oc:owner-display-name>
        <oc:share-types/>
      </d:prop>
      <d:status>HTTP/1.1 200 OK</d:status>
    </d:propstat>
    <d:propstat>
      <d:prop>
        <d:quota-available-bytes/>
        <nc:is-encrypted/>
      </d:prop>
      <d:status>HTTP/1.1 404 Not Found</d:status>
    </d:propstat>
  </d:response>
</d:multistatus>

So I tried to deploy Collabora on my own using Docker-Compose:

version: "2.4"
services:
  collabora:
    image: collabora/code
    container_name: collabora
      #    mem_limit: 1G
    restart: always

    ports:
      - 9980:9980

    volumes:
      - ./loolwsd.xml:/etc/loolwsd/loolwsd.xml

    environment:
      - "TZ=Europe/Berlin"
      - "DONT_GEN_SSL_CERT=1"
      - "username=admin"
      - "password=admin"
      - "domain=dietpi"

    cap_add:
      - MKNOD

But the container doesn’t start

collabora    | wsd-00001-00001 2021-12-06 20:27:18.360471 +0000 [ coolwsd ] DBG  Caching files in [/usr/bin/browser/welcome]| wsd/FileServer.cpp:732
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360556 +0000 [ coolwsd ] ERR  Failed to open directory [/usr/bin/browser/welcome] (ENOENT: No such file or directory)| wsd/FileServer.cpp:737
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360633 +0000 [ coolwsd ] DBG  New SocketPoll [websrv_poll] owned by 0x7faa004010| net/Socket.cpp:213
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360684 +0000 [ coolwsd ] DBG  New SocketPoll [prisoner_poll] owned by 0x7faa004010| net/Socket.cpp:213
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360717 +0000 [ coolwsd ] DBG  New SocketPoll [accept_poll] owned by 0x7faa004010| net/Socket.cpp:213
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360740 +0000 [ coolwsd ] TRC  Initialize StorageBase| wsd/COOLWSD.cpp:1628
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360827 +0000 [ coolwsd ] INF  Adding trusted WOPI host: [pihole].| wsd/Storage.cpp:108
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360865 +0000 [ coolwsd ] INF  Adding trusted WOPI host: [10\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}].| wsd/Storage.cpp:108
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360896 +0000 [ coolwsd ] INF  Adding trusted WOPI host: [172\.1[6789]\.[0-9]{1,3}\.[0-9]{1,3}].| wsd/Storage.cpp:108
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360928 +0000 [ coolwsd ] INF  Adding trusted WOPI host: [172\.2[0-9]\.[0-9]{1,3}\.[0-9]{1,3}].| wsd/Storage.cpp:108
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360957 +0000 [ coolwsd ] INF  Adding trusted WOPI host: [172\.3[01]\.[0-9]{1,3}\.[0-9]{1,3}].| wsd/Storage.cpp:108
collabora    | wsd-00001-00001 2021-12-06 20:27:18.360985 +0000 [ coolwsd ] INF  Adding trusted WOPI host: [192\.168\.[0-9]{1,3}\.[0-9]{1,3}].| wsd/Storage.cpp:108
collabora    | wsd-00001-00001 2021-12-06 20:27:18.361015 +0000 [ coolwsd ] INF  Adding blocked WOPI host: [192\.168\.1\.1].| wsd/Storage.cpp:113
collabora    | Failed to initialize COOLWSD: File not found: /etc/coolwsd/ca-chain.cert.pem
collabora    | wsd-00001-00001 2021-12-06 20:27:18.362196 +0000 [ coolwsd ] FTL  Failed to initialize COOLWSD: File not found: /etc/coolwsd/ca-chain.cert.pem| wsd/COOLWSD.hpp:464
collabora    | File not found: /etc/coolwsd/ca-chain.cert.pem
collabora    | terminate called after throwing an instance of 'Poco::SystemException'
collabora    |   what():  System exception
collabora exited with code 133

Which confuses me, since it’s documented that DONT_GEN_SSL_CERT=1 should disable SSL, so there is no need for any certificate.

Also make sure to check loolwsd vs coolwsd

1 Like

Hello,
I have exactly the same behaviour on a freshly installed Ubuntu 20.04 / php 7.4.3 : when I try to open or create a new document, it spins forever.
Any clue ?
Thanks,
Laurent.

Which parts of the linked issues did you try?

I’m having the exact same issue after updating Nextcload to version 23 on my VM running in Proxmox.

I tried to uninstall Collabora and install it again but I have the same issue.

Any suggestion on how to debug this issue?

Nextcloud version: 23.0.0.10
Ubuntu: Ubuntu 21.04
PHP: php8.0-fpm

I have to ask the same… what did you try?

Try installing an older version of Collabora Online(richdocuments) app in Nextcloud. It should work.

Collabora Online 5.0.1 has been released and I can confirm that now documents open correctly.

1 Like

With Collabora Online 5.0.1 and the embedded build-in code server, I could make it work. At least for the next restart, then the files got offered to download until I change the server to self hosted and then back to embedded. This triggers the start.

I’d prefer the self hosted one, since this is not really stable and functions like exec() can be dangerous if misused. However, I can’t make it work using Docker.

grafik

collabora    | Ready to accept connections on port 9980.



collabora    | wsd-00001-00040 2021-12-23 21:18:51.069171 +0000 [ websrv_poll ] ERR  Skipping the token [--co-image-logo=url('/nextcloud/core/img/logo/logo.png?v=0')] since it has more than one '=' pair| wsd/FileServerUtil.cpp:156
collabora    | wsd-00001-00042 2021-12-23 21:18:51.197852 +0000 [ docbroker_001 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora    | wsd-00001-00042 2021-12-23 21:18:54.252112 +0000 [ docbroker_001 ] ERR  #29: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
collabora    | wsd-00001-00042 2021-12-23 21:18:54.252495 +0000 [ docbroker_001 ] ERR  #29: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00042 2021-12-23 21:18:54.252608 +0000 [ docbroker_001 ] ERR  #29: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00042 2021-12-23 21:18:54.252848 +0000 [ docbroker_001 ] ERR  WOPI::CheckFileInfo failed for URI [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an?access_token=9b4XyWygobP7DxZGl0VXEqIG1Uyhhh2m&access_token_ttl=0]: 0 . Headers:  Body: []| wsd/Storage.cpp:690
collabora    | wsd-00001-00042 2021-12-23 21:18:54.253222 +0000 [ docbroker_001 ] ERR  loading document exception: WOPI::CheckFileInfo failed: | wsd/DocumentBroker.cpp:1913
collabora    | wsd-00001-00042 2021-12-23 21:18:54.253412 +0000 [ docbroker_001 ] ERR  Failed to add session to [/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an] with URI [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an?access_token=9b4XyWygobP7DxZGl0VXEqIG1Uyhhh2m&access_token_ttl=0]: WOPI::CheckFileInfo failed: | wsd/DocumentBroker.cpp:1875
collabora    | wsd-00001-00042 2021-12-23 21:18:54.253563 +0000 [ docbroker_001 ] ERR  Storage error while starting session on /nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an for socket #26. Terminating connection. Error: WOPI::CheckFileInfo failed: | wsd/COOLWSD.cpp:3690
collabora    | wsd-00001-00042 2021-12-23 21:18:54.254230 +0000 [ docbroker_001 ] WRN  Ignoring attempted read from 26| ./net/Socket.hpp:1095
collabora    | wsd-00001-00042 2021-12-23 21:18:54.254316 +0000 [ docbroker_001 ] ERR  Invalid or unknown session [03d] to remove.| wsd/DocumentBroker.cpp:1956
collabora    | wsd-00001-00040 2021-12-23 21:18:54.501957 +0000 [ websrv_poll ] WRN  DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an] that is marked to be destroyed. Rejecting client request.| wsd/COOLWSD.cpp:2277
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502492 +0000 [ websrv_poll ] ERR  Error while handling Client WS Request: Failed to create DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an].| wsd/COOLWSD.cpp:3719
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502674 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502746 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502785 +0000 [ websrv_poll ] WRN  Socket #25 is shutting down but 64 bytes couldn't be flushed and still remain in the output buffer.| ./net/WebSocketHandler.hpp:771
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502843 +0000 [ websrv_poll ] ERR  #25: attempted to remove: 1076 which is > size: 0 clamped to 0| ./net/Socket.hpp:1210
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502909 +0000 [ websrv_poll ] WRN  Ignoring attempted read from 25| ./net/Socket.hpp:1095
collabora    | wsd-00001-00040 2021-12-23 21:18:54.502956 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00040 2021-12-23 21:18:55.012577 +0000 [ websrv_poll ] WRN  DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an] that is marked to be destroyed. Rejecting client request.| wsd/COOLWSD.cpp:2277
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013037 +0000 [ websrv_poll ] ERR  Error while handling Client WS Request: Failed to create DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an].| wsd/COOLWSD.cpp:3719
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013190 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013280 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013354 +0000 [ websrv_poll ] WRN  Socket #25 is shutting down but 64 bytes couldn't be flushed and still remain in the output buffer.| ./net/WebSocketHandler.hpp:771
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013433 +0000 [ websrv_poll ] ERR  #25: attempted to remove: 1076 which is > size: 0 clamped to 0| ./net/Socket.hpp:1210
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013536 +0000 [ websrv_poll ] WRN  Ignoring attempted read from 25| ./net/Socket.hpp:1095
collabora    | wsd-00001-00040 2021-12-23 21:18:55.013612 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00035 2021-12-23 21:18:56.256089 +0000 [ prisoner_poll ] WRN  Prisoner connection disconnected but without valid socket.| wsd/COOLWSD.cpp:2364
collabora    | wsd-00001-00044 2021-12-23 21:18:57.041219 +0000 [ docbroker_002 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora    | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora    | frk-00036-00036 2021-12-23 21:18:57.087787 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/6zp5Rs8l5PJ5xlHV/tmp]| common/JailUtil.cpp:70
collabora    | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora    | frk-00036-00036 2021-12-23 21:18:57.139083 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/6zp5Rs8l5PJ5xlHV/lo]| common/JailUtil.cpp:70
collabora    | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora    | frk-00036-00036 2021-12-23 21:18:57.184893 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/6zp5Rs8l5PJ5xlHV]| common/JailUtil.cpp:70
collabora    | wsd-00001-00044 2021-12-23 21:18:57.321065 +0000 [ docbroker_002 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora    | wsd-00001-00044 2021-12-23 21:19:00.396070 +0000 [ docbroker_002 ] ERR  #28: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
collabora    | wsd-00001-00044 2021-12-23 21:19:00.396293 +0000 [ docbroker_002 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00044 2021-12-23 21:19:00.396413 +0000 [ docbroker_002 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora    | wsd-00001-00044 2021-12-23 21:19:00.396700 +0000 [ docbroker_002 ] ERR  WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an/contents?access_token=&access_token_ttl=0&permission=edit] failed with Status Code: 0| wsd/Storage.cpp:1106
collabora    | wsd-00001-00044 2021-12-23 21:19:00.396933 +0000 [ docbroker_002 ] ERR  Cannot download document from WOPI storage uri [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an/contents?access_token=&access_token_ttl=0&permission=edit]. Error: WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an/contents?access_token=&access_token_ttl=0&permission=edit] failed: | wsd/Storage.cpp:1043
collabora    | kit-00043-00036 2021-12-23 21:19:03.598577 +0000 [ kitbroker_002 ] ERR  Failed to load: file://, error: Unsupported URL <file://>: "type detection failed" /home/collabora/jenkins/workspace/core-cp-21.06-for-arm64-PI/framework/source/loadenv/loadenv.cxx:189| kit/Kit.cpp:1327
collabora    | kit-00043-00036 2021-12-23 21:19:03.598804 +0000 [ kitbroker_002 ] ERR  error: cmd=load kind=faileddocloading| ./common/Session.hpp:139
collabora    | kit-00043-00036 2021-12-23 21:19:03.598919 +0000 [ kitbroker_002 ] ERR  Failed to get LoKitDocument instance for [file://].| kit/ChildSession.cpp:716
collabora    | kit-00043-00036 2021-12-23 21:19:03.599138 +0000 [ kitbroker_002 ] ERR  Document [/nextcloud/index.php/apps/richdocuments/wopi/files/237_ocwpcnpye4an] is not loaded.| kit/Kit.cpp:1718
collabora    | wsd-00001-00044 2021-12-23 21:19:03.599141 +0000 [ docbroker_002 ] ERR  Document load failed: faileddocloading| wsd/ClientSession.cpp:1469
collabora    | wsd-00001-00044 2021-12-23 21:19:03.603104 +0000 [ docbroker_002 ] WRN  Ignoring attempted read from 20| ./net/Socket.hpp:1095
collabora    | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora    | frk-00036-00036 2021-12-23 21:19:04.655764 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/33ouwHytzUA1Szwk/tmp]| common/JailUtil.cpp:70
collabora    | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora    | frk-00036-00036 2021-12-23 21:19:04.709683 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/33ouwHytzUA1Szwk/lo]| common/JailUtil.cpp:70
collabora    | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora    | frk-00036-00036 2021-12-23 21:19:04.767482 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/33ouwHytzUA1Szwk]| common/JailUtil.cpp:70

Docker-Compose file


version: "2.4"

services:
  collabora:
    image: collabora/code
    container_name: collabora
      #    mem_limit: 1.5G
    restart: always
      #privileged: true

    ports:
      - 9980:9980

    environment:
      - "TZ=Europe/Berlin"
        #- extra_params=--o:ssl.enable=false --o:net.proto=IPv4 --o:net.post_allow.host[0]=[0-9+]+\.[0-9]+\.[0-9]+\.[0-9]+ --o:storage.wopi.host=[0-9+]+\.[0-9]+\.[0-9]+\.[0-9]+ --o:server_name=dietpi\.fritz\.box
      - extra_params=--o:ssl.enable=false --o:net.proto=IPv4 --o:net.post_allow.host[0]=[0-9+]+\.[0-9]+\.[0-9]+\.[0-9]+ --o:storage.wopi.host=[0-9+]+\.[0-9]+\.[0-9]+\.[0-9]+
      - "username=admin"
      - "password=admin"
      - domain=dietpi

    cap_add:
      - MKNOD

I set http://dietpi:9980 as hostname in the collabora NC settings of the app. Also tried the recent 21.11.0.6.1 release from 16th of december, as well as other things recommended in different blog articles and other posts like setting privileged:true, but I couldn’t make one of them work.