Collabora does not work?

Hey there, i am having trouble installing collabora for nextcloud.

I am running nextcloud 19.0.1 on debian buster. to install it i have followed this howto: https://nextcloud.com/collaboraonline/ at the bottom of the page. then i installed collabora as app in nextcloud, set up my adress (https://docs.mydomain.de) and got a green light that it works.
when i try to create a document, it takes aprox 20s then i get this errormessage: “Collabora Online Development Edition konnte nicht geladen werden - Bitte versuche es später noch einmal” ("could not be loaded, please try again later or so…)

there are no errormessages in /var/log/apache2/error or apache

i created a collabora.conf in /etc/apache2/sites-availabe/ (and then a2ensite of course and reloaded apache) wich looks like this:
-------------------------
<VirtualHost *:443>
ServerName docs.mydomain.de:443

# SSL configuration, you may want to take the easy route instead and use Lets Encrypt!
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/docs.mydomain.de/fullchain.pem
#SSLCertificateChainFile /path/to/intermediate_certificate
SSLCertificateKeyFile /etc/letsencrypt/live/docs.mydomain.de/privkey.pem
SSLProtocol             all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder     on

# Encoded slashes need to be allowed
AllowEncodedSlashes NoDecode

# Container uses a unique non-signed certificate
SSLProxyEngine On
SSLProxyVerify None
SSLProxyCheckPeerCN Off
SSLProxyCheckPeerName Off

# keep the host
ProxyPreserveHost On

# static html, js, images, etc. served from loolwsd
# loleaflet is the client part of LibreOffice Online
ProxyPass           /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse    /loleaflet https://127.0.0.1:9980/loleaflet

# WOPI discovery URL
ProxyPass           /hosting/discovery https://127.0.0.1:9980/hosting/discovery retry=0
ProxyPassReverse    /hosting/discovery https://127.0.0.1:9980/hosting/discovery

# Main websocket
ProxyPassMatch "/lool/(.*)/ws$" wss://127.0.0.1:9980/lool/$1/ws nocanon

# Admin Console websocket
ProxyPass   /lool/adminws wss://127.0.0.1:9980/lool/adminws

# Download as, Fullscreen presentation and Image upload operations
ProxyPass           /lool https://127.0.0.1:9980/lool
ProxyPassReverse    /lool https://127.0.0.1:9980/lool

# Endpoint with information about availability of various features
ProxyPass           /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities retry=0
ProxyPassReverse    /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities
</VirtualHost>

when i let docker show me the logs, this is what i get:

-------------------------------
| ./net/WebSocketHandler.hpp:733
wsd-00006-00033 2020-08-13 13:03:35.361682 [ prisoner_poll ] TRC  #19: Wrote outgoing data 129 bytes of 129 bytes buffered.| ./net/Socket.hpp:1163
wsd-00006-00033 2020-08-13 13:03:35.361791 [ prisoner_poll ] INF  ChildProcess ctor [36].| wsd/LOOLWSD.hpp:57
wsd-00006-00033 2020-08-13 13:03:35.361833 [ prisoner_poll ] DBG  Removing socket #19 (of 3) from prisoner_poll| net/Socket.cpp:316
wsd-00006-00033 2020-08-13 13:03:35.361876 [ prisoner_poll ] DBG  #19 Thread affinity set to 0 (was 0x7fc604d97700).| ./net/Socket.hpp:288
wsd-00006-00033 2020-08-13 13:03:35.361913 [ prisoner_poll ] TRC  Calling addNewChild in disposition's move thing to add to NewChildren| wsd/LOOLWSD.cpp:2078
wsd-00006-00033 2020-08-13 13:03:35.361945 [ prisoner_poll ] TRC  Adding one child to NewChildren| wsd/LOOLWSD.cpp:476
wsd-00006-00033 2020-08-13 13:03:35.361971 [ prisoner_poll ] INF  Have 1 spare child after adding [36].| wsd/LOOLWSD.cpp:480
wsd-00006-00033 2020-08-13 13:03:35.362003 [ prisoner_poll ] TRC  Notifying NewChildrenCV| wsd/LOOLWSD.cpp:483
wsd-00006-00033 2020-08-13 13:03:35.362075 [ prisoner_poll ] TRC  #18: Incoming data buffer 0 bytes, closeSocket? false| ./net/Socket.hpp:1093
wsd-00006-00006 2020-08-13 13:03:35.362089 [ loolwsd ] TRC  Have 1 new children.| wsd/LOOLWSD.cpp:3769
wsd-00006-00006 2020-08-13 13:03:35.362169 [ loolwsd ] INF  WSD initialization complete: setting log-level to [warning] as configured.| wsd/LOOLWSD.cpp:3776
wsd-00006-00033 2020-08-13 13:03:35.362120 [ prisoner_poll ] TRC  #18: Wrote outgoing data 10 bytes of 10 bytes buffered.| ./net/Socket.hpp:1163
Ready to accept connections on port 9980.

wsd-00006-00038 2020-08-13 13:12:59.139335 [ websrv_poll ] WRN  client - server version mismatch, disabling browser cache. Expected: ed4f732| wsd/FileServer.cpp:287
wsd-00006-00038 2020-08-13 13:12:59.140041 [ websrv_poll ] WRN  FileServerRequestHandler: File not found: Invalid URI request: [/loleaflet].| wsd/FileServer.cpp:489
wsd-00006-00038 2020-08-13 13:13:07.355475 [ websrv_poll ] WRN  client - server version mismatch, disabling browser cache. Expected: ed4f732| wsd/FileServer.cpp:287
wsd-00006-00038 2020-08-13 13:13:07.355609 [ websrv_poll ] WRN  FileServerRequestHandler: File not found: Invalid URI request: [/loleaflet].| wsd/FileServer.cpp:489
----------------------------------------

if anyone has an idea what i could do here, it would be really great!!!

Hello,
I will try to understand the cause of your problem.
Can you try first to integrate apache config on your main nextcloud site and then stop, remove and start docker with

docker ps
docker stop yourdocker
docker rm your docker
docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=cloud\\.nextcloud\\.com' --restart always --cap-add MKNOD collabora/code

where cloud.nextcloud.com is your main domain

Restart Apache and remove the old config with a2dissite collabora.conf
Then reload configuration in collabora app with your main domain.

Hi,

thank you so much for your reply, but i still get the same error. Here is what i did:

root@mail:/etc/apache2/sites-available# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                             NAMES
93cc902215a1        collabora/code      "/bin/sh -c 'bash st…"   2 hours ago         Up About an hour    127.0.0.1:9980                                       ->9980/tcp   sweet_proskuriakova
root@mail:/etc/apache2/sites-available# docker stop sweet_proskuriakova
sweet_proskuriakova
root@mail:/etc/apache2/sites-available# docker rm sweet_proskuriakova
sweet_proskuriakova
root@mail:/etc/apache2/sites-available# docker run -t -d -p 127.0.0.1:9980:9980 -e 'domain=cloud\\.mydomain\\.de' --restart always --cap-add MKNOD collabora/code
2608b3320731223d3db09637c28784e736420d346520adce757c6b4927bc1fee
root@mail:/etc/apache2/sites-available# /etc/init.d/apache2 restart
[ ok ] Restarting apache2 (via systemctl): apache2.service.
root@mail:/etc/apache2/sites-available#
root@mail:/etc/apache2/sites-available# curl -k https://localhost:9980
OK
root@mail:/etc/apache2/sites-available#

I dont quite know what else i could do now… i am very new to docker - so its quite hard for me to understand where to look for problems…

Any idea?

Cheers and thanks!

PS.: here is the apache config file for nextcloud:
<VirtualHost *:80>
ServerName cloud.mydomain.de
Redirect / https://cloud.mydomain.de/

<VirtualHost *:80>
    ServerName cloud.myseconddomain.de
    Redirect / https://cloud.myseconddomain.de/
</VirtualHost>


<VirtualHost *:443>
    ServerName cloud.mydomain.de
    ServerPath /
    DocumentRoot /var/www/nextcloud/
    DirectoryIndex index.html
    <IfModule mod_headers.c>
      Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
    </IfModule>
    SSLEngine on
    SSLHonorCipherOrder on
    SSLCertificateFile /etc/letsencrypt/live/cloud.mydomain.de/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/cloud.mydomain.de/privkey.pem
</VirtualHost>


<VirtualHost *:443>
    ServerName cloud.myseconddomain.de
    ServerPath /
    DocumentRoot /var/www/nextcloud/
    DirectoryIndex index.html
    <IfModule mod_headers.c>
      Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
    </IfModule>
    SSLEngine on
    SSLHonorCipherOrder on
    SSLCertificateFile /etc/letsencrypt/live/cloud.myseconddomain.de/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/cloud.myseconddomain.de/privkey.pem
</VirtualHost>



<VirtualHost *:443>
ServerName docs.mydomain.de:443

# SSL configuration, you may want to take the easy route instead and use Lets Encrypt!
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/docs.mydomain.de/fullchain.pem
#SSLCertificateChainFile /path/to/intermediate_certificate
SSLCertificateKeyFile /etc/letsencrypt/live/docs.mydomain.de/privkey.pem
SSLProtocol             all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder     on

# Encoded slashes need to be allowed
AllowEncodedSlashes NoDecode

# Container uses a unique non-signed certificate
SSLProxyEngine On
SSLProxyVerify None
SSLProxyCheckPeerCN Off
SSLProxyCheckPeerName Off

# keep the host
ProxyPreserveHost On

# static html, js, images, etc. served from loolwsd
# loleaflet is the client part of LibreOffice Online
ProxyPass           /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse    /loleaflet https://127.0.0.1:9980/loleaflet

# WOPI discovery URL
ProxyPass           /hosting/discovery https://127.0.0.1:9980/hosting/discovery retry=0
ProxyPassReverse    /hosting/discovery https://127.0.0.1:9980/hosting/discovery

# Main websocket
ProxyPassMatch "/lool/(.*)/ws$" wss://127.0.0.1:9980/lool/$1/ws nocanon

# Admin Console websocket
ProxyPass   /lool/adminws wss://127.0.0.1:9980/lool/adminws

# Download as, Fullscreen presentation and Image upload operations
ProxyPass           /lool https://127.0.0.1:9980/lool
ProxyPassReverse    /lool https://127.0.0.1:9980/lool

# Endpoint with information about availability of various features
ProxyPass           /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities retry=0
ProxyPassReverse    /hosting/capabilities https://127.0.0.1:9980/hosting/capabilities
</VirtualHost>

And did you change the apache configuration before restarting apache ?
In log of Nextcloud (web interface), there is nothing ?

Hi,

this seems to be a very strange problem… i also tried to remove the docker server install and installed the "collabora integrated CODE Server"App, to see if this would work.

I still get the same error…

(i installed the app, then selected “use internal CODE server”. i also get the green “ok” sign on top of the settings page)
but when i create a document, or open a document, there is a spinning wheel for around 30s and then i get “couldnt load collabora… please try again later”

in what log file should i look for the error message?!

Thank you so much !!

PS.: yes i changed the config and then restarted apache2.
PPS.: i finally found the log files for nextcloud. And there are some errors:
Here is a snipped of the logfile (last lines when i tried to open a document with collabora):

[richdocuments] Error: Doctrine\DBAL\Exception\InvalidFieldNameException: An exception occurred while executing ‘INSERT INTO oc_richdocuments_wopi(fileid,owner_uid,editor_uid,version,canwrite,server_host,token,expiry,template_destination,hide_download,direct,is_remote_token,template_id) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)’ with params [271139, “user”, “user”, 0, true, “https://cloud.domain.de/”, “vdnZe4VcAtTYvLBywbMVFeQ4lCA6hi7J”, 1597757907, 0, false, false, false, 0]:

SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘hide_download’ in ‘field list’ at <>

  1. /var/www/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php line 169
    Doctrine\DBAL\Driver\AbstractMySQLDriver->convertException(“An exception oc … '”, Doctrine\DBAL\Dr … ]})
  2. /var/www/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php line 145
    Doctrine\DBAL\DBALException::wrapException(Doctrine\DBAL\Driver\PDOMySql\Driver {}, Doctrine\DBAL\Dr … ]}, “An exception oc … '”)
  3. /var/www/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Statement.php line 162
    Doctrine\DBAL\DBALException::driverExceptionDuringQuery(Doctrine\DBAL\Driver\PDOMySql\Driver {}, Doctrine\DBAL\Dr … ]}, “INSERT INTO `oc … )”, {1: 271139,2: "j … 0})
  4. /var/www/nextcloud/lib/public/AppFramework/Db/Mapper.php line 253
    Doctrine\DBAL\Statement->execute()
  5. /var/www/nextcloud/lib/public/AppFramework/Db/Mapper.php line 128
    OCP\AppFramework\Db\Mapper->execute(“INSERT INTO `*P … )”, [271139,"johanne … 0])
  6. /var/www/nextcloud/apps/richdocuments/lib/Db/WopiMapper.php line 89
    OCP\AppFramework\Db\Mapper->insert(OCA\Richdocuments\Db\Wopi {id: null})
  7. /var/www/nextcloud/apps/richdocuments/lib/TokenManager.php line 205
    OCA\Richdocuments\Db\WopiMapper->generateFileToken("*** sensitive parameter replaced ***", “user”, “user”, “0”, 1, “https://cloud.domain.de/”, null, 0, false, false, false, 0, null)
  8. /var/www/nextcloud/apps/richdocuments/lib/Controller/DocumentController.php line 245
    OCA\Richdocuments\TokenManager->getToken("*** sensitive parameters replaced ***")
  9. /var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 170
    OCA\Richdocuments\Controller\DocumentController->index("*** sensitive parameter replaced ***", null)
  10. /var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php line 100
    OC\AppFramework\Http\Dispatcher->executeController(OCA\Richdocument … {}, “index”)
  11. /var/www/nextcloud/lib/private/AppFramework/App.php line 137
    OC\AppFramework\Http\Dispatcher->dispatch(OCA\Richdocument … {}, “index”)
  12. /var/www/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php line 47
    OC\AppFramework\App::main(“OCA\Richdocume … r”, “index”, OC\AppFramework\ … {}, {_route: “richdocuments.document.index”})
  13. <>
    OC\AppFramework\Routing\RouteActionHandler->__invoke({_route: “richdocuments.document.index”})
  14. /var/www/nextcloud/lib/private/Route/Router.php line 297
    call_user_func(OC\AppFramework\ … {}, {_route: “richdocuments.document.index”})
  15. /var/www/nextcloud/lib/base.php line 1007
    OC\Route\Router->match("/apps/richdocuments/index")
  16. /var/www/nextcloud/index.php line 37
    OC::handleRequest()

GET /index.php/apps/richdocuments/index?fileId=271139&requesttoken=xNr%2B2GOtJL3iuLOBAkD8WKrIy1dRRnD%2FglnGV7pqSbM%3D%3A8q%2BonlTgVc2g08PTehmvH825nDJ6dTqt1zHwE9QYHNs%3D
from 62.91.xxx.xxx by userat 2020-08-18T13:08:27+00:00

I’m getting this as well on the latest Nextcloud and CODE. Any insights? (P.S. I’ve been tearing my hair about this for years now.)