ML
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Onlyoffice vs Collabora in Nextcloud

    IT Discussion
    nextcloud 16 onlyoffice collabora
    8
    70
    11.6k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • brandon220B
      brandon220
      last edited by

      I've decided to go with OO because of its strong use of native MS Office file formats. I have Nextcloud, nginx, and onlyoffice all running as VMs and both NC and OO have certs and can be accessed via https. NC can connect to OO fine and I can generate a new document in NC - however, the document opens as a blank page and throws an error inside the webpage if you look at the logs. I am sure that it is a problem with the .conf file in nginx but I haven't been able to narrow it down. I think it has something to do with connecting to the OO server as http behind the proxy. Most of the documentation shows using certs directly on the OO server but that defeats the purpose of my proxy.

      travisdh1T 1 Reply Last reply Reply Quote 1
      • travisdh1T
        travisdh1 @brandon220
        last edited by

        @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

        I've decided to go with OO because of its strong use of native MS Office file formats. I have Nextcloud, nginx, and onlyoffice all running as VMs and both NC and OO have certs and can be accessed via https. NC can connect to OO fine and I can generate a new document in NC - however, the document opens as a blank page and throws an error inside the webpage if you look at the logs. I am sure that it is a problem with the .conf file in nginx but I haven't been able to narrow it down. I think it has something to do with connecting to the OO server as http behind the proxy. Most of the documentation shows using certs directly on the OO server but that defeats the purpose of my proxy.

        That's the same state I remember getting stuck at.

        brandon220B 1 Reply Last reply Reply Quote 0
        • brandon220B
          brandon220 @travisdh1
          last edited by

          @travisdh1 I was really hoping to get it working. It would be a great tool and I know I would use it. I've read so much about it and keep getting stuck. I don't know why it has to be that difficult and why they put so much info out on a Docker setup. Not everyone wants to use docker in production. Maybe I'm alone in that way of thinking ?

          black3dynamiteB 1 Reply Last reply Reply Quote 0
          • black3dynamiteB
            black3dynamite @brandon220
            last edited by

            @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

            @travisdh1 I was really hoping to get it working. It would be a great tool and I know I would use it. I've read so much about it and keep getting stuck. I don't know why it has to be that difficult and why they put so much info out on a Docker setup. Not everyone wants to use docker in production. Maybe I'm alone in that way of thinking ?

            This guy post nothing but Nextcloud related howto.
            https://www.c-rieger.de/nextcloud-and-only-office-nginx/

            brandon220B 1 Reply Last reply Reply Quote 1
            • brandon220B
              brandon220 @black3dynamite
              last edited by

              @black3dynamite I have read a lot of his documentation. The problem is that it uses Docker and no proxy server. There HAS to be a way to get it working behind a proxy. I also have everything on Fedora and CentOS. I could build this following his guide in my lab and it would probably work but that doesn't help my existing systems.

              1 Reply Last reply Reply Quote 0
              • stacksofplatesS
                stacksofplates
                last edited by

                Ok onlyoffice seems easier. It's pretty easy with the container. I'm not running NGINX in front of it but it should be pretty much the same.

                Here's what I used:

                Nextcloud

                podman run -d -p 8080:80 nextcloud
                

                Onlyoffice

                podman run -i -t -d -p 80:80 --restart=always onlyoffice/documentserver
                

                Each container is running in it's own Vagrant box so when I pointed Nextcloud to Onlyoffice I just used the IP of the Vagrant box that Onlyoffice is in.

                onlyoffice-nextcloud.png

                brandon220B 1 Reply Last reply Reply Quote 0
                • brandon220B
                  brandon220 @stacksofplates
                  last edited by

                  @stacksofplates Ok. Fair Enough... I have the NC server and the nginx both as VMs (fedora 30) in Hyper-V. Would you recommend setting up another Fedora 30 vm just to run Docker or perhaps another OS? I have ZERO experience with Docker.

                  stacksofplatesS 1 Reply Last reply Reply Quote 0
                  • brandon220B
                    brandon220
                    last edited by

                    I still need this to work with nginx as I will be adding more web-facing servers soon. It would keep the cert management and renewal a lot more simplified.

                    1 Reply Last reply Reply Quote 0
                    • stacksofplatesS
                      stacksofplates @brandon220
                      last edited by stacksofplates

                      @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

                      @stacksofplates Ok. Fair Enough... I have the NC server and the nginx both as VMs (fedora 30) in Hyper-V. Would you recommend setting up another Fedora 30 vm just to run Docker or perhaps another OS? I have ZERO experience with Docker.

                      You could. I'd just spin up a Fedora 30 vm, install podman and run the command I showed. Then just point NextCloud to that.

                      You don't need Docker. You just need a container runtime engine, podman is pretty awesome

                      Make sure to open whatever port you use on the host. If you want to use 80, you'll need to be root. If you use something like 8080:80 you can do it without root.

                      1 Reply Last reply Reply Quote 0
                      • brandon220B
                        brandon220
                        last edited by

                        When I enter the OO server in the app on NC (16), it will only allow me to put in an http address. How did you get around this?

                        stacksofplatesS 1 Reply Last reply Reply Quote 0
                        • stacksofplatesS
                          stacksofplates @brandon220
                          last edited by

                          @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

                          When I enter the OO server in the app on NC (16), it will only allow me to put in an http address. How did you get around this?

                          Not sure. I didn't have HTTPS set up. Are you accessing Nextcloud without HTTPS? I thought it was forced to use whatever method you are using to connect.

                          brandon220B 1 Reply Last reply Reply Quote 0
                          • brandon220B
                            brandon220 @stacksofplates
                            last edited by

                            @stacksofplates I am accessing as HTTPS. That is my issue with the proxy. It is breaking the connection to the document server somehow. I installed podman and I get errors when trying to pull down the container. Troubleshooting that now.

                            stacksofplatesS 1 Reply Last reply Reply Quote 0
                            • stacksofplatesS
                              stacksofplates @brandon220
                              last edited by

                              @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

                              @stacksofplates I am accessing as HTTPS. That is my issue with the proxy. It is breaking the connection to the document server somehow. I installed podman and I get errors when trying to pull down the container. Troubleshooting that now.

                              What address are you using for the document server? Are you using the internal address or the FQDN from the proxy and doing it through the proxy?

                              brandon220B 1 Reply Last reply Reply Quote 0
                              • black3dynamiteB
                                black3dynamite
                                last edited by

                                Will you show us your nginx config for OnlyOffice?

                                brandon220B 1 Reply Last reply Reply Quote 0
                                • brandon220B
                                  brandon220 @stacksofplates
                                  last edited by

                                  @stacksofplates FQDN because of the requirement for https. I only have 1 static ip on the WAN side hence the reason for the proxy. I could try putting certs directly on the OO server and using a different port. Just seems like a bunch of extra steps versus they way I would think it should work.

                                  stacksofplatesS 1 Reply Last reply Reply Quote 0
                                  • brandon220B
                                    brandon220 @black3dynamite
                                    last edited by

                                    @black3dynamite Yes, I can grab it and post it this afternoon.

                                    1 Reply Last reply Reply Quote 0
                                    • stacksofplatesS
                                      stacksofplates @brandon220
                                      last edited by stacksofplates

                                      @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

                                      @stacksofplates FQDN because of the requirement for https. I only have 1 static ip on the WAN side hence the reason for the proxy. I could try putting certs directly on the OO server and using a different port. Just seems like a bunch of extra steps versus they way I would think it should work.

                                      No you shouldn't need to do that. So you're accessing Nextcloud through HTTPS and it's forcing you to use HTTP to connect to OO? I wonder if it's because the interface on Nextcloud isn't using HTTPS because you're terminating the TLS at NGINX not the Nextcloud server itself. Just to get it working see if you can enter the IP of the OO server through HTTP there.

                                      brandon220B 1 Reply Last reply Reply Quote 0
                                      • brandon220B
                                        brandon220 @stacksofplates
                                        last edited by

                                        @stacksofplates True.... I was overthinking it.
                                        OOsnip1.PNG
                                        If I try to use the local ip, it throws a mixed content error regarding https.

                                        Error when trying to connect (Mixed Active Content is not allowed. HTTPS address for Document Server is required.)

                                        stacksofplatesS 1 Reply Last reply Reply Quote 0
                                        • stacksofplatesS
                                          stacksofplates @brandon220
                                          last edited by stacksofplates

                                          @brandon220 said in Onlyoffice vs Collabora in Nextcloud:

                                          @stacksofplates True.... I was overthinking it.
                                          OOsnip1.PNG
                                          If I try to use the local ip, it throws a mixed content error regarding https.

                                          Error when trying to connect (Mixed Active Content is not allowed. HTTPS address for Document Server is required.)

                                          ok kind of cheating but what if you do -p 443:80 to the container instead of -p 80:80? Does it let you fake https then? I mean this would happen regardless of if it's a container or not. I guess I can see the point of Nextcloud wanting to not have mixed protocols but what about running things on localhost beside it? That seems like a strange decision.

                                          1 Reply Last reply Reply Quote 1
                                          • brandon220B
                                            brandon220
                                            last edited by

                                            server {
                                                client_max_body_size 40M;
                                                server_name office.domain.org;
                                                proxy_set_header X-Forwarded-Host $http_host/editors;
                                                proxy_set_header X-Real-IP $remote_addr;
                                                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                                                proxy_set_header Host $host;
                                                proxy_set_header X-Forwarded-Proto $scheme;
                                                proxy_set_header X-NginX-Proxy true;
                                                proxy_redirect off;
                                                location / {
                                                    proxy_set_header X-Real-IP $remote_addr;
                                                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                                                    proxy_set_header Host $http_host;
                                                    proxy_set_header X-NginX-Proxy true;
                                                    proxy_pass http://192.168.1.106;
                                                    add_header X-Frame-Options "ALLOW-FROM https://nc.domain.org/" always;
                                                    proxy_redirect off;
                                                    # Socket.IO Support
                                                    proxy_http_version 1.1;
                                                    proxy_set_header Upgrade $http_upgrade;
                                                    proxy_set_header Connection "upgrade";
                                                }
                                                ssl_stapling on;
                                                ssl_stapling_verify on;
                                                ssl_session_cache shared:SSL:10m;
                                                add_header Strict-Transport-Security "max-age=31536000; includeSubdomains";
                                            #    listen 80;
                                            
                                                listen 443 ssl; # managed by Certbot
                                                ssl_certificate /etc/letsencrypt/live/office.domain.org/fullchain.pem; # managed by Certbot
                                                ssl_certificate_key /etc/letsencrypt/live/office.domain.org/privkey.pem; # managed by Certbot
                                                include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
                                                ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
                                            
                                            }
                                            server { listen 80; location / { proxy_pass_header Server; proxy_pass http://nc/; } }
                                            server {
                                                client_max_body_size 40M;
                                                listen 80;
                                                server_name office.domain.org;
                                                return 301 https://$host$request_uri;
                                            
                                            
                                            JaredBuschJ 1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 3 / 4
                                            • First post
                                              Last post