nextcloud / docker

⛴ Docker image of Nextcloud
https://hub.docker.com/_/nextcloud/
GNU Affero General Public License v3.0
6.06k stars 1.83k forks source link

Collabora Online - Built-in CODE Server in Nextcloud docker. Documents do not load #1896

Closed Japhys closed 5 months ago

Japhys commented 1 year ago

I am using Docker behind nginx proxy manager and everything works fine. I installed Collabora Online - Built-in CODE Server and Nextcloud office and that also seems fine. But opening an document does not work, it keeps spinning.

version: '2'

volumes:
  nextcloud:
  db:

services:
  db:
    image: mariadb:10.5
    restart: always
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    volumes:
      - /srv/nextcloud/db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=X
      - MYSQL_PASSWORD=X
      - MYSQL_DATABASE=X
      - MYSQL_USER=X
  app:
    image: nextcloud
    restart: always
    ports:
      - 8080:80
    links:
      - db
    volumes:
      - /srv/nextcloud/nextcloud/:/var/www/html
    environment:
      - MYSQL_PASSWORD=X
      - MYSQL_DATABASE=X
      - MYSQL_USER=X
      - MYSQL_HOST=db
      - PHP_MEMORY_LIMIT=4096M
      - PHP_UPLOAD_LIMIT=4096M

2023-01-12_20-21

both on desktop and mobile

2023-01-12_20-24

Any idea's?

Japhys commented 1 year ago

The log says this, no sure what to do

Error | richdocuments | GuzzleHttp\Exception\ConnectException: cURL  error 28: Operation timed out after 45000 milliseconds with 0 bytes  received (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for  https://example.com/custom_apps/richdocumentscode/proxy.php?req=/hosting/capabilities
-- | -- | --
Japhys commented 1 year ago

I also tried a different docker image (linuxserver.io) on a different local server without nginx proxy manager. The exact same thing happens. Driving me nuts. Is Collabora built in app with nextcloud office simply not working with docker? Does anyone successfully use this at all?

martadinata666 commented 1 year ago

I can use it fine, on first set up in integration app nextcloud office you should look at the logs, in my case im missing libfuse2 library so the appimage wont load at all. then i disable/enable again, and the CODE run correctly.

nextcloud_web.1.ozsf13488i2w@homelab    | 10.0.0.2 - - [15/Jan/2023:14:
31:08 +0700] "PUT /ocs/v2.php/apps/user_status/api/v1/heartbeat?format=json HTTP/1.1" 200 1012 "-" "Mozilla/5.0 (X11; Ubuntu; Linux aarch64; rv:108.0) Gecko/20100101 Firefox/108.0"
nextcloud_web.1.ozsf13488i2w@homelab    | dlopen(): error loading libfuse.so.2
nextcloud_web.1.ozsf13488i2w@homelab    | AppImages require FUSE to run. 
nextcloud_web.1.ozsf13488i2w@homelab    | You might still be able to extract the contents of this AppImage 
nextcloud_web.1.ozsf13488i2w@homelab    | if you run it with the --appimage-extract option. 
nextcloud_web.1.ozsf13488i2w@homelab    | See https://github.com/AppImage/AppImageKit/wiki/FUSE 
nextcloud_web.1.ozsf13488i2w@homelab    | for more information
nextcloud_web.1.ozsf13488i2w@homelab    | Logging at warning level to file: /tmp/coolwsd.l4Lemco714/coolwsd.log
nextcloud_web.1.ozsf13488i2w@homelab    | 127.0.0.1 -  15/Jan/2023:14:31:21 +0700 "GET /custom_apps/richdocumentscode/proxy.php" 400
nextcloud_web.1.ozsf13488i2w@homelab    | NOTICE: PHP message: richdocumentscode (proxy.php) error exit, PID: 15349, Message: Timed out opening local socket: 99 - Cannot assign requested address
nextcloud_web.1.ozsf13488i2w@homelab    | [Sun Jan 15 14:31:21.601642 2023] [proxy_fcgi:error] [pid 15235:tid 140564448130816] [client 10.0.0.2:41142] AH01071: Got error 'PHP message: richdocumentscode (proxy.php) error exit, PID: 15349, Message: Timed out opening local socket: 99 - Cannot assign requested address'
nextcloud_web.1.ozsf13488i2w@homelab    | 10.0.0.2 - - [15/Jan/2023:14:31:21 +0700] "GET /custom_apps/richdocumentscode/proxy.php?req=/hosting/capabilities HTTP/1.1" 200 2587 "-" "Nextcloud Server Crawler"
nextcloud_web.1.ozsf13488i2w@homelab    | 127.0.0.1 -  15/Jan/2023:14:31:21 +0700 "POST /index.php" 200
nextcloud_web.1.ozsf13488i2w@homelab    | 10.0.0.2 - - [15/Jan/2023:14:31:21 +0700] "POST /apps/notify_push/pre_auth HTTP/1.1" 200 2911 "-" "Mozilla/5.0 (X11; Ubuntu; Linux aarch64; rv:108.0) Gecko/20100101 Firefox/108.0"
nextcloud_web.1.ozsf13488i2w@homelab    | 10.0.0.2 - - [15/Jan/2023:14:31:13 +0700] "GET /custom_apps/richdocumentscode/proxy.php?status HTTP/1.1" 200 2460 "-" "Nextcloud Server Crawler"
nextcloud_web.1.ozsf13488i2w@homelab    | 127.0.0.1 -  15/Jan/2023:14:31:13 +0700 "GET /custom_apps/richdocumentscode/proxy.php" 200
nextcloud_web.1.ozsf13488i2w@homelab    | 127.0.0.1 -  15/Jan/2023:14:31:18 +0700 "GET /custom_apps/richdocumentscode/proxy.php" 400
nextcloud_web.1.ozsf13488i2w@homelab    | NOTICE: PHP message: richdocumentscode (proxy.php) error exit, PID: 15342, Message: Timed out opening local socket: 99 - Cannot assign requested address
nextcloud_web.1.ozsf13488i2w@homelab    | [Sun Jan 15 14:31:22.046796 2023] [proxy_fcgi:error] [pid 15234:tid 140564171302656] [client 10.0.0.2:45038] AH01071: Got error 'PHP message: richdocumentscode (proxy.php) error exit, PID: 15342, Message: Timed out opening local socket: 99 - Cannot assign requested address'
nextcloud_web.1.ozsf13488i2w@homelab    | 10.0.0.2 - - [15/Jan/2023:14:31:18 +0700] "GET /custom_apps/richdocumentscode/proxy.php?req=/hosting/discovery HTTP/1.1" 200 2587 "-" "Nextcloud Server Crawler"
nextcloud_web.1.ozsf13488i2w@homelab    | 127.0.0.1 -  15/Jan/2023:14:31:13 +0700 "POST /index.php" 500
nextcloud_web.1.ozsf13488i2w@homelab    | 10.0.0.2 - - [15/Jan/2023:14:31:13 +0700] "POST /index.php/apps/richdocuments/ajax/admin.php HTTP/1.1" 500 936 "-" "Mozilla/5.0 (X11; Ubuntu; Linux aarch64; rv:108.0) Gecko/20100101 Firefox/108.0"
nextcloud_web.1.ozsf13488i2w@homelab    | Security: coolforkit incorrect user-name, other than 'cool'
nextcloud_web.1.ozsf13488i2w@homelab    | Init vcl
nextcloud_web.1.ozsf13488i2w@homelab    | preload: merged pdfimport log migrationoo2 deploymentgui mozbootstrap sdbt dbaxml writer ldapbe2 mysql_jdbc flat calc dbpool2 pcr dba bib ucpchelp1 vbaswobj scriptframe dlgprov vbaobj ucpdav1 emboleobj wpftwriter wpftimpress wpftdraw writerfilter solver xsec_xmlsec xmlsecurity migrationoo3 ucpcmis1 cached1 sw msword textconversiondlgs sm slideshow PresentationMinimizer sdfilt sd scfilt scd sc wpftcalc oox LanguageTool hwp t602filter pdffilter msforms chartcore analysis chartcontroller protocolhandler bootstrap embobj smd pricing stocservices proxyfac animcore reflection cairocanvas graphicfilter invocadapt sdd invocation svgfilter storagefd swd scn namingservice dbase uuresolver ucppkg1 binaryurp date cui expwrap introspection
nextcloud_web.1.ozsf13488i2w@homelab    | Disabled: cmdmail rptxml rptui rpt dbu dbp odbc PresenterScreen ucpftp1 abp sdbc2 
nextcloud_web.1.ozsf13488i2w@homelab    | Allowlisted languages: de_DE el en_GB en_US es_ES fr_FR hu it nl pt_BR pt_PT ru 
nextcloud_web.1.ozsf13488i2w@homelab    | Preloading dictionaries: de-DE en-US fr-FR it-IT nl-NL pt-BR ru-RU en-GB nl-BE pt-PT es-ES 
nextcloud_web.1.ozsf13488i2w@homelab    | Preloading thesauri: de-DE en-US fr-FR it-IT nl-NL pt-BR ru-RU en-GB nl-BE pt-PT es-ES 
nextcloud_web.1.ozsf13488i2w@homelab    | Preload icons
nextcloud_web.1.ozsf13488i2w@homelab    | Preload languages
nextcloud_web.1.ozsf13488i2w@homelab    | Preload fonts
nextcloud_web.1.ozsf13488i2w@homelab    | Preload config
nextcloud_web.1.ozsf13488i2w@homelab    | Ready to accept connections on port 9983.

If the appimage run correctly then the Nextcloud Office app will show many options and green check Collabora online reachable

2023-01-15-144233_1574x900_scrot

Japhys commented 1 year ago

Thanks @martadinata666

Nextcloud Office app does show all the options and green check Collabora online is indeed reachable. However Opening a file takes forever and ends up like this

2023-01-15_14-19

I checked /data/nextcloud.log and don't see anything weird except for WOPI. Never set those addresses before with built in collabora app. But creating a white list doesn't help anyway.

Any suggestions which logs I should take a look at?

martadinata666 commented 1 year ago

I cant really tell much, aside im on glibc based docker image, and the libfuse2 that preventing appimage startup. Im gonna say, go into container console and try execute the appimage manually. 🤔 should be throw error if something not right/preventing it to run.

Japhys commented 1 year ago

Thanks! I will dive into it a bit more and try a few things

martadinata666 commented 1 year ago

oh almost forgotten, also check the SSL thing, should use valid one. or disabling it completely (http) only.

Japhys commented 1 year ago

I am using a valid certificate in nginx proxy manager and set up Nextcloud to work behind a proxy just like Nextcloud explains in it's documents. But SSL shouldn't be an issue when using the built in collabora app right? Should work out of the box, at least that's my experience (before I started using docker ;))

martadinata666 commented 1 year ago

I am using a valid certificate in nginx proxy manager and set up Nextcloud to work behind a proxy just like Nextcloud explains in it's documents. But SSL shouldn't be an issue when using the built in collabora app right? Should work out of the box, at least that's my experience (before I started using docker ;))

so what im experiencing is when loading using https://someip:port the CODE wont load at all, the log show 400 something, vice versa when access using a valid domain it load successfully. Maybe affecting you or not, cant really tell. ☕ good luck in finding out which one your issue is.

ckuethe commented 1 year ago

I think it might be missing libfuse. I just tried creating a spreadsheet using the built in CODE server and found this in my logs

...
192.168.0.11 - - [22/Jan/2023:20:03:22 -0800] "PROPFIND /remote.php/dav/files/ckuethe/test.ods HTTP/1.1" 207 1375 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"
dlopen(): error loading libfuse.so.2

AppImages require FUSE to run. 
You might still be able to extract the contents of this AppImage 
if you run it with the --appimage-extract option. 
See https://github.com/AppImage/AppImageKit/wiki/FUSE 
for more information
...
kosmosac commented 1 year ago

Saving the (empty) field "Allow list for WOPI requests" in the Office settings - using the arrow at the end of the input box - fixed this issue (Failed to load Nextcloud Office - please try again later) for me. To avoid confusion: I did not experience any errors related to libfuse.

kacperpaczos commented 1 year ago

The bug is still persisting in version 26 of Nextcloud, which was installed on Docker and accessed through a reverse proxy.

/var/www/html/custom_apps/richdocumentscode/collabora/Collabora_Online.AppImage: not found

image

kacperpaczos commented 1 year ago

Fresh installation. Indeed, the CODE application is installed and located in the correct directory. However, I'm encountering an issue with launching it. When I attempt to run the application by executing "./Collabora_Online.AppImage" in the "/var/www/html/custom_apps/richdocumentscode/collabora" folder, I receive the error message "sh: ./Collabora_Online.AppImage: not found".

Additionally, when I try to select the Collabora instance, I encounter the following error: "PHP message: richdocumentscode (proxy.php) error exit, PID: 68, Message: no_glibc".

kacperpaczos commented 1 year ago

From: https://github.com/CollaboraOnline/richdocumentscode#system-requirements

Nextcloud 19 with Collabora Online app 3.7.0 or higher glibc (https://github.com/AppImage/AppImageKit/issues/1015) Fontconfig (libfontconfig.so.1 - required by Collabora_Online.AppImage)

tribut commented 1 year ago

For the built-in collabora CODE server to work, you have to ensure that:

This is necessary because alpine does not ship with bash by default which the CODE AppImage needs (among possibly other things) and FUSE is not available inside docker, so the AppImage has to be unpacked in order to run.

kochinc commented 1 year ago
  • You use one of the Debian-based images (not -alpine) and
  • you set the environment variable APPIMAGE_EXTRACT_AND_RUN=1 (for example using docker run -e or by adding it to the environment:-key inside docker-compose.yml)

Thanks for the clue. Once I switched to nextcloud:fpm image instead of nextcloud:fpm-alpine, the Collabora CODE is able to open files without issues. I don't even have to set the APPIMAGE_EXTRACT_AND_RUN variable.

thgoebel commented 1 year ago

I recently run into the same problem. Documents don't load, and the request to https://cloud.example.com/custom_apps/richdocumentscode/proxy.php?status times out with 504.

After seeing this thread I set APPIMAGE_EXTRACT_AND_RUN=1 . This resulted in:

Failed to run /tmp/appimage_extracted_a3ed3648c2d4a42fcd239937c53130a2/AppRun: Permission denied

After seeing this error message it clicked: I recently followed Nextcloud Recognize's advice of mounting tmp as tmpfs: https://github.com/nextcloud/recognize#tmp

The solution is to add :exec (see StackOverflow):

volumes:
      - type: tmpfs
        target: /tmp:exec

Now it works again, I don't even need APPIMAGE_EXTRACT_AND_RUN.

cableTh0rn commented 1 year ago

Saving the (empty) field "Allow list for WOPI requests" in the Office settings - using the arrow at the end of the input box - fixed this issue (Failed to load Nextcloud Office - please try again later) for me. To avoid confusion: I did not experience any errors related to libfuse.

This fixed my issue thanks (documents do not load, spinning)

joshtrichards commented 5 months ago

Closing since this isn't really an image matter.