NC 23 mit Collabora Code: No route to host

Th3Dan

Cadet 4th Year
Registriert
März 2014
Beiträge
109
Hallo,
ich versuche eine Testinstallation von Nextcloud 23 mit Collabora auf einem Raspberry Pi 4 zum Laufen zu bringen. In meinen ersten Tests habe ich mir den Build-in Server angeschaut, gemerkt dass der nicht viel taugt und es dann mit einem eigenen versucht. Nach einigem herumprobieren lief es dann. Ich war mir sicher, das Problem gefunden zu haben und wollte es zur Dokumentation noch einmal sauber aufsetzen. Daher die erste Konfiguration nicht gesichert - stellte sich leider als Fehler heraus, denn nun bekomme ich es nicht mehr zum laufen und weiß nicht mehr, welches Detail anders war... Ich erinnere mich nur noch, dass bei DietPi 10 Updates ausstanden und im Log des Collabora Code Containers keine Meldung "Ready to accept connections on Port 9980" erschien, nachdem der gestartet war. Das wunderte mich, aber nachdem es trotzdem funktionierte, hatte ich es nicht weiter beachtet.

Mein Vorgehen: Frisches DietPi ARMV8, sodass ich ein 64 Bit OS habe - Collabora bietet nur 64 Builds für ARM an. Beim Einrichtungsassistenten installiere ich nichts, bleibt alles auf Standard. Dann ein Neustart und mit dietpi-software installiere ich NextCloud, da ist die aktuellste Version 23 bereits enthalten und anschließend unter http://dietpi/nextcloud/ erreichbar:

firefox_2021-12-11_18-02-19.png


Um sicher zu gehen, dass meine Probleme nicht mit den fehlenden Modulen zusammenhängen, habe ich diese zusammen mit vim nachinstalliert:

Code:
sudo apt install vim php-bcmath php-gmp php-imagick libmagickcore-6.q16-6-extra

Damit verschwinden die Warnungen, sollte für mein Vorhaben passen. Nun über dietpi-software Docker + Docker-Compose nachinstalliert und Code mit folgender docker-compose.yml gestartet:

Code:
version: "2.4"

services:
  collabora:
    image: collabora/code
    restart: always

    ports:
      - 9980:9980

    environment:
      - "TZ=Europe/Berlin"
      - "extra_params=--o:ssl.enable=false"
      - "username=admin"
      - "password=admin"
      - "domain=dietpi"

    cap_add:
      - MKNOD
Server gestartet, auf http://dietpi:9980 bekomme ich "OK". Nun in Nextcloud die Collabora App installiert, in den Einstellungen "Eigener Server" ausgewählt und http://dietpi:9980 eingetragen.
firefox_2021-12-11_19-01-15.png


Im Log von Collabora erscheint folgende Meldung (vermutlich weil NC die Verbindung getestet hat):
Code:
collabora_1  | wsd-00001-00041 2021-12-11 18:01:10.674954 +0000 [ websrv_poll ] WRN  convert-to: Requesting address is denied: ::ffff:172.18.0.1| wsd/COOLWSD.cpp:2593
Beim "Neu" Knopf in Nextcloud Dateien fällt auf, dass die neu hinzugekommenen Typen von Collabora kein Icon haben:

1639245814231.png


Wenn ich nun ein neues Dokument (leer ohne Vorlage) erstelle, erscheint für einige Sekunden ein Ladebildschirm und danach folgende Fehlermeldung:

1639245842391.png


Im Log vom Collabora Container sind dabei einige Zeilen dazu gekommen:
Code:
collabora_1  | wsd-00001-00041 2021-12-11 18:02:42.995949 +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_1  | wsd-00001-00043 2021-12-11 18:02:43.080637 +0000 [ docbroker_001 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.149134 +0000 [ docbroker_001 ] ERR  #29: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.149366 +0000 [ docbroker_001 ] ERR  #29: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.149449 +0000 [ docbroker_001 ] ERR  #29: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.149677 +0000 [ docbroker_001 ] ERR  WOPI::CheckFileInfo failed for URI [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw?access_token=lpfdjpg2q7hphBwEnqh6wN2E8e6aA83Q&access_token_ttl=0]: 0 . Headers:        Body: []| wsd/Storage.cpp:690
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.150049 +0000 [ docbroker_001 ] ERR  loading document exception: WOPI::CheckFileInfo failed: | wsd/DocumentBroker.cpp:1913
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.150214 +0000 [ docbroker_001 ] ERR  Failed to add session to [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] with URI [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw?access_token=lpfdjpg2q7hphBwEnqh6wN2E8e6aA83Q&access_token_ttl=0]: WOPI::CheckFileInfo failed: | wsd/DocumentBroker.cpp:1875
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.150358 +0000 [ docbroker_001 ] ERR  Storage error while starting session on /nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw for socket #26. Terminating connection. Error: WOPI::CheckFileInfo failed: | wsd/COOLWSD.cpp:3674
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.151021 +0000 [ docbroker_001 ] WRN  Ignoring attempted read from 26| ./net/Socket.hpp:1095
collabora_1  | wsd-00001-00043 2021-12-11 18:02:46.151093 +0000 [ docbroker_001 ] ERR  Invalid or unknown session [00c] to remove.| wsd/DocumentBroker.cpp:1956
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.554627 +0000 [ websrv_poll ] WRN  DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] that is marked to be destroyed. Rejecting client request.| wsd/COOLWSD.cpp:2276
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.555131 +0000 [ websrv_poll ] ERR  Error while handling Client WS Request: Failed to create DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw].| wsd/COOLWSD.cpp:3703
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.555901 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.556019 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.556083 +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_1  | wsd-00001-00041 2021-12-11 18:02:46.556175 +0000 [ websrv_poll ] ERR  #25: attempted to remove: 1188 which is > size: 0 clamped to 0| ./net/Socket.hpp:1210
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.557703 +0000 [ websrv_poll ] WRN  Ignoring attempted read from 25| ./net/Socket.hpp:1095
collabora_1  | wsd-00001-00041 2021-12-11 18:02:46.557803 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.067669 +0000 [ websrv_poll ] WRN  DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] that is marked to be destroyed. Rejecting client request.| wsd/COOLWSD.cpp:2276
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.068137 +0000 [ websrv_poll ] ERR  Error while handling Client WS Request: Failed to create DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw].| wsd/COOLWSD.cpp:3703
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.068950 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.069066 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.069132 +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_1  | wsd-00001-00041 2021-12-11 18:02:47.069226 +0000 [ websrv_poll ] ERR  #25: attempted to remove: 1188 which is > size: 0 clamped to 0| ./net/Socket.hpp:1210
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.069322 +0000 [ websrv_poll ] WRN  Ignoring attempted read from 25| ./net/Socket.hpp:1095
collabora_1  | wsd-00001-00041 2021-12-11 18:02:47.069395 +0000 [ websrv_poll ] ERR  #25: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00041 2021-12-11 18:02:49.078213 +0000 [ websrv_poll ] WRN  Prisoner connection disconnected but without valid socket.| wsd/COOLWSD.cpp:2363
collabora_1  | wsd-00001-00045 2021-12-11 18:02:49.094247 +0000 [ docbroker_002 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora_1  | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora_1  | frk-00037-00037 2021-12-11 18:02:49.136726 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/7ix9ipo0p7dsi2eU/tmp]| common/JailUtil.cpp:70
collabora_1  | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora_1  | frk-00037-00037 2021-12-11 18:02:49.177479 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/7ix9ipo0p7dsi2eU/lo]| common/JailUtil.cpp:70
collabora_1  | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora_1  | frk-00037-00037 2021-12-11 18:02:49.219824 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/7ix9ipo0p7dsi2eU]| common/JailUtil.cpp:70
collabora_1  | wsd-00001-00045 2021-12-11 18:02:49.317606 +0000 [ docbroker_002 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.388994 +0000 [ docbroker_002 ] ERR  #28: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.389353 +0000 [ docbroker_002 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.389449 +0000 [ docbroker_002 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.389725 +0000 [ docbroker_002 ] ERR  WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw/contents?access_token=&access_token_ttl=0&permission=edit] failed with Status Code: 0| wsd/Storage.cpp:1106
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.389951 +0000 [ docbroker_002 ] ERR  Cannot download document from WOPI storage uri [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw/contents?access_token=&access_token_ttl=0&permission=edit]. Error: WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw/contents?access_token=&access_token_ttl=0&permission=edit] failed: | wsd/Storage.cpp:1043
collabora_1  | kit-00044-00037 2021-12-11 18:02:52.550774 +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_1  | kit-00044-00037 2021-12-11 18:02:52.550897 +0000 [ kitbroker_002 ] ERR  error: cmd=load kind=faileddocloading| ./common/Session.hpp:139
collabora_1  | kit-00044-00037 2021-12-11 18:02:52.550959 +0000 [ kitbroker_002 ] ERR  Failed to get LoKitDocument instance for [file://].| kit/ChildSession.cpp:716
collabora_1  | kit-00044-00037 2021-12-11 18:02:52.551016 +0000 [ kitbroker_002 ] ERR  Document [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] is not loaded.| kit/Kit.cpp:1718
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.551064 +0000 [ docbroker_002 ] ERR  Document load failed: faileddocloading| wsd/ClientSession.cpp:1467
collabora_1  | kit-00044-00037 2021-12-11 18:02:52.551211 +0000 [ kitbroker_002 ] ERR  Session::handleInput: Exception while handling [commandvalues command=.uno:ViewAnnotations]: Document /nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw is not loaded.| common/Session.cpp:274
collabora_1  | wsd-00001-00045 2021-12-11 18:02:52.553608 +0000 [ docbroker_002 ] WRN  Ignoring attempted read from 25| ./net/Socket.hpp:1095
collabora_1  | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora_1  | frk-00037-00037 2021-12-11 18:02:52.672353 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/vxzDKiv6YdnKlvEV/tmp]| common/JailUtil.cpp:70
collabora_1  | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora_1  | frk-00037-00037 2021-12-11 18:02:52.716775 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/vxzDKiv6YdnKlvEV/lo]| common/JailUtil.cpp:70
collabora_1  | sh: 1: /usr/bin/coolmount: Operation not permitted
collabora_1  | frk-00037-00037 2021-12-11 18:02:52.761154 +0000 [ forkit ] ERR  Failed to unmount [/opt/cool/child-roots/vxzDKiv6YdnKlvEV]| common/JailUtil.cpp:70

Zu "Waking up dead poll thread" gibt es ein Ticket, der hatte keine Probleme aber hat sich über die Warnung gewundert. Das soll man ignorieren, scheint also wohl kein ernstes Problem zu sein.

Code:
#29: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
Das klingt nach einem Netzwerkthema. Wenn ich innerhalb des Containers die URL versuche aufzurufen, die weiter später im Log ebenfalls Fehler wirft, scheint das mit ~3 Sekunden zwar etwas zu dauern, aber es funktioniert grundsätzlich, also kommt Collabora netzwerktechnisch auf NC:

Code:
cool@fd44b3eb2218:/$ time curl --head "http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw?access_token=lpfdjpg2q7hphBwEnqh6wN2E8e6aA83Q&access_token_ttl=0"
HTTP/1.1 200 OK
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
...
Content-Length: 606
Date: Sat, 11 Dec 2021 18:07:02 GMT
Server: lighttpd/1.4.59

real    0m3.290s
user    0m0.022s
sys     0m0.015s
Ich kann daher die Meldung nicht nachvollziehen. Habe meinen Pi ein weiteres Mal neu installiert und bin wie hier dokumentiert vorgegangen, es lässt sich reproduzieren.

Für den "sh: 1: /usr/bin/coolmount: Operation not permitted" Fehler habe ich testweise den Container mit vollen Rechten ausgeführt (privileged: true statt der capabilits, die eigentlich ausreichen sollten, aber ich wollte das komplett ausschließen können). Dadurch verschwinden diese Fehler, aber die restlichen mit dem "No route to host" Fehler bleiben:

Code:
collabora_1  | wsd-00001-00053 2021-12-11 18:13:29.808466 +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_1  | wsd-00001-00055 2021-12-11 18:13:30.097640 +0000 [ docbroker_001 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.156994 +0000 [ docbroker_001 ] ERR  #29: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.157279 +0000 [ docbroker_001 ] ERR  #29: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.157435 +0000 [ docbroker_001 ] ERR  #29: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.158362 +0000 [ docbroker_001 ] ERR  WOPI::CheckFileInfo failed for URI [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw?access_token=imcH2cPVOp0ZXOGl3B356weK6QbDerpG&access_token_ttl=0]: 0 . Headers:        Body: []| wsd/Storage.cpp:690
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.158711 +0000 [ docbroker_001 ] ERR  loading document exception: WOPI::CheckFileInfo failed: | wsd/DocumentBroker.cpp:1913
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.158826 +0000 [ docbroker_001 ] ERR  Failed to add session to [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] with URI [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw?access_token=imcH2cPVOp0ZXOGl3B356weK6QbDerpG&access_token_ttl=0]: WOPI::CheckFileInfo failed: | wsd/DocumentBroker.cpp:1875
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.158928 +0000 [ docbroker_001 ] ERR  Storage error while starting session on /nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw for socket #24. Terminating connection. Error: WOPI::CheckFileInfo failed: | wsd/COOLWSD.cpp:3674
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.159468 +0000 [ docbroker_001 ] WRN  Ignoring attempted read from 24| ./net/Socket.hpp:1095
collabora_1  | wsd-00001-00055 2021-12-11 18:13:33.159546 +0000 [ docbroker_001 ] ERR  Invalid or unknown session [008] to remove.| wsd/DocumentBroker.cpp:1956
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.432494 +0000 [ websrv_poll ] WRN  DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] that is marked to be destroyed. Rejecting client request.| wsd/COOLWSD.cpp:2276
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433102 +0000 [ websrv_poll ] ERR  Error while handling Client WS Request: Failed to create DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw].| wsd/COOLWSD.cpp:3703
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433213 +0000 [ websrv_poll ] ERR  #24: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433299 +0000 [ websrv_poll ] ERR  #24: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433351 +0000 [ websrv_poll ] WRN  Socket #24 is shutting down but 64 bytes couldn't be flushed and still remain in the output buffer.| ./net/WebSocketHandler.hpp:771
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433427 +0000 [ websrv_poll ] ERR  #24: attempted to remove: 1188 which is > size: 0 clamped to 0| ./net/Socket.hpp:1210
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433511 +0000 [ websrv_poll ] WRN  Ignoring attempted read from 24| ./net/Socket.hpp:1095
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.433588 +0000 [ websrv_poll ] ERR  #24: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.965460 +0000 [ websrv_poll ] WRN  DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] that is marked to be destroyed. Rejecting client request.| wsd/COOLWSD.cpp:2276
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.965923 +0000 [ websrv_poll ] ERR  Error while handling Client WS Request: Failed to create DocBroker with docKey [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw].| wsd/COOLWSD.cpp:3703
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.966025 +0000 [ websrv_poll ] ERR  #24: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.966105 +0000 [ websrv_poll ] ERR  #24: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.966156 +0000 [ websrv_poll ] WRN  Socket #24 is shutting down but 64 bytes couldn't be flushed and still remain in the output buffer.| ./net/WebSocketHandler.hpp:771
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.966231 +0000 [ websrv_poll ] ERR  #24: attempted to remove: 1188 which is > size: 0 clamped to 0| ./net/Socket.hpp:1210
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.966311 +0000 [ websrv_poll ] WRN  Ignoring attempted read from 24| ./net/Socket.hpp:1095
collabora_1  | wsd-00001-00053 2021-12-11 18:13:33.966383 +0000 [ websrv_poll ] ERR  #24: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00038 2021-12-11 18:13:35.160066 +0000 [ prisoner_poll ] WRN  Prisoner connection disconnected but without valid socket.| wsd/COOLWSD.cpp:2363
collabora_1  | wsd-00001-00067 2021-12-11 18:13:35.999557 +0000 [ docbroker_002 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora_1  | wsd-00001-00067 2021-12-11 18:13:36.218201 +0000 [ docbroker_002 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.268949 +0000 [ docbroker_002 ] ERR  #28: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.269624 +0000 [ docbroker_002 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.271088 +0000 [ docbroker_002 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.271381 +0000 [ docbroker_002 ] ERR  WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw/contents?access_token=&access_token_ttl=0&permission=edit] failed with Status Code: 0| wsd/Storage.cpp:1106
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.271717 +0000 [ docbroker_002 ] ERR  Cannot download document from WOPI storage uri [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw/contents?access_token=&access_token_ttl=0&permission=edit]. Error: WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw/contents?access_token=&access_token_ttl=0&permission=edit] failed: | wsd/Storage.cpp:1043
collabora_1  | kit-00056-00039 2021-12-11 18:13:39.433027 +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_1  | kit-00056-00039 2021-12-11 18:13:39.433165 +0000 [ kitbroker_002 ] ERR  error: cmd=load kind=faileddocloading| ./common/Session.hpp:139
collabora_1  | kit-00056-00039 2021-12-11 18:13:39.433229 +0000 [ kitbroker_002 ] ERR  Failed to get LoKitDocument instance for [file://].| kit/ChildSession.cpp:716
collabora_1  | kit-00056-00039 2021-12-11 18:13:39.433287 +0000 [ kitbroker_002 ] ERR  Document [/nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw] is not loaded.| kit/Kit.cpp:1718
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.433357 +0000 [ docbroker_002 ] ERR  Document load failed: faileddocloading| wsd/ClientSession.cpp:1467
collabora_1  | kit-00056-00039 2021-12-11 18:13:39.433421 +0000 [ kitbroker_002 ] ERR  Session::handleInput: Exception while handling [commandvalues command=.uno:ViewAnnotations]: Document /nextcloud/index.php/apps/richdocuments/wopi/files/197_ocsimp4otysw is not loaded.| common/Session.cpp:274
collabora_1  | wsd-00001-00067 2021-12-11 18:13:39.507946 +0000 [ docbroker_002 ] WRN  Ignoring attempted read from 20| ./net/Socket.hpp:1095
 
Zeig mal bitte docker PS und den Befehl mit dem du den Container gestartet hast.

Edit: NVm. Du hast da ja ein compose. Sieht leider richtig aus.

Bei nc23 ist collabora jedoch relativ kaputt.. Ich habe bei mir die collabora 4.x app gepatched und in 23 manuell eingepflegt
Ergänzung ()

Hm..
Schau mal den hier:
https://github.com/CollaboraOnline/online/issues/779#issuecomment-735632328
 
Zuletzt bearbeitet:
madmax2010 schrieb:
Bei nc23 ist collabora jedoch relativ kaputt.. Ich habe bei mir die collabora 4.x app gepatched und in 23 manuell eingepflegt
Was genau hast du da denn gepatcht? Ich habe bisher nur Posts gelesen, wo versucht wurde eine ältere Version manuell zu installieren.

madmax2010 schrieb:
Das Ticket hatte ich auch schon gefunden, daher stammte mein Versuch mit "privileged: true". Ansonsten mountet der noch /etc/localtime und /etc/timezone in seinem Container. Sollte theoretisch egal sein, aber grade weil der Fehler mit der Session wirft (wo es theoretisch eine Rolle spielen könnte) habe ich das mal in meine Compose-Datei eingebunden:
Code:
version: "2.4"

services:
  collabora:
    image: collabora/code
    restart: always
    privileged: true

    ports:
      - 9980:9980

    environment:
      - "TZ=Europe/Berlin"
      - "extra_params=--o:ssl.enable=false"
      - "username=admin"
      - "password=admin"
      - "domain=dietpi"

    volumes:
      - /etc/localtime:/etc/localtime
      - /etc/timezone:/etc/timezone

    cap_add:
      - MKNOD
Brachte das gleiche Ergebnis. Um auszuschließen, dass es was mit Compose zutun hat (theoretisch ja nicht möglich, aber nachdem mir die weiteren Fehlerquellen ausgehen wollte ich das auch probiert haben) hier mal mein Aufruf mit docker run:

Code:
docker run -t -d -p 9980:9980 -e "domain=dietpi" -e "username=admin" -e "password=admin" -v /etc/localtime:/etc/localtime -v /etc/timezone:/etc/timezone --name collabora_docker_run --restart always --cap-add MKNOD --privileged collabora/code
Interessanterweise ist das Fehlerbild ein wenig anders.

Code:
Ready to accept connections on port 9980.

wsd-00001-00042 2021-12-11 21:13:50.640849 +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
frk-00038-00038 2021-12-11 21:13:50.729047 +0000 [ forkit ] ERR  Cannot access path [/opt/cool/systemplate]: Permission denied| common/FileUtil.cpp:324
wsd-00001-00079 2021-12-11 21:13:50.741251 +0000 [ docbroker_005 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
wsd-00001-00079 2021-12-11 21:13:50.885361 +0000 [ docbroker_005 ] WRN  Waking up dead poll thread [HttpSynReqPoll], started: false, finished: false| ./net/Socket.hpp:718
wsd-00001-00079 2021-12-11 21:13:53.956962 +0000 [ docbroker_005 ] ERR  #28: Socket read returned -1 (EHOSTUNREACH: No route to host)| ./net/Socket.hpp:1121
wsd-00001-00079 2021-12-11 21:13:53.957387 +0000 [ docbroker_005 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
wsd-00001-00079 2021-12-11 21:13:53.957652 +0000 [ docbroker_005 ] ERR  #28: Socket write returned -1 (EPIPE: Broken pipe)| ./net/Socket.hpp:1381
wsd-00001-00079 2021-12-11 21:13:53.958084 +0000 [ docbroker_005 ] ERR  WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/208_ocsimp4otysw/contents?access_token=&access_token_ttl=0] failed with Status Code: 0| wsd/Storage.cpp:1106
wsd-00001-00079 2021-12-11 21:13:53.958470 +0000 [ docbroker_005 ] ERR  Cannot download document from WOPI storage uri [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/208_ocsimp4otysw/contents?access_token=&access_token_ttl=0]. Error: WOPI::GetFile [http://dietpi/nextcloud/index.php/apps/richdocuments/wopi/files/208_ocsimp4otysw/contents?access_token=&access_token_ttl=0] failed: | wsd/Storage.cpp:1043
kit-00069-00038 2021-12-11 21:13:54.118961 +0000 [ kitbroker_005 ] 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
kit-00069-00038 2021-12-11 21:13:54.119118 +0000 [ kitbroker_005 ] ERR  error: cmd=load kind=faileddocloading| ./common/Session.hpp:139
kit-00069-00038 2021-12-11 21:13:54.119338 +0000 [ kitbroker_005 ] ERR  Failed to get LoKitDocument instance for [file://].| kit/ChildSession.cpp:716
wsd-00001-00079 2021-12-11 21:13:54.119717 +0000 [ docbroker_005 ] ERR  Document load failed: faileddocloading| wsd/ClientSession.cpp:1467
wsd-00001-00079 2021-12-11 21:13:54.181345 +0000 [ docbroker_005 ] WRN  Ignoring attempted read from 20| ./net/Socket.hpp:1095
Zwar immer noch Großteils die gleichen Fehler, aber "Cannot access path [/opt/cool/systemplate]" hatte ich zuvor nicht. Wobei mich das überrascht, nachdem der ja privilegiert läuft.

Was mir - unabhängig davon ob docker run oder Compose - clientseitig aufgefallen ist: Es gibt vier Websocket Switch Protocol Anfragen.

1639257426780.png

Dazu wiederholen sich ähnliche Fehlermeldungen bei Collabora ähnlich. Sieht so aus, als ob an der Stelle der Fehler in Collabora auftritt und der Client es mehrfach neu versucht. In der Konsole steht ein Fehler mit Timeout, ohne weitere Details. Vermutlich versucht er es nach dem ersten Fehlschlag drei weitere Male und läuft dann in diesen Timeout.

1639257509457.png

Wobei das auch nicht viel weiter hilft, das Problem scheint ja am Collabora Server zu liegen. Ich vermute es hängt mit dem ersten "EHOSTUNREACH: No route to host" Fehler zusammen. Allerdings ist mir nicht klar, was genau er da versucht und wieso das schief läuft.
 
Zurück
Oben